linux dynamic load libva (#10171)

1. Linux dynamic load libva, which can fix lack of libva dependency for
   appimage or flatpak, also fix libva version mismatch between build
and run.
2. Remove libvdpau, it's not used, and add libva2 explicitly for deb and
   appimage
3. Print FFmpeg configure log to know the actual codecs.

Test
*  ubuntu 22.04 x64
  - [x] deb
  - [x] flatpak
  - [x] appimage
* ubuntu 18.04
  * deb: fcntl64 not found
  - [x]:appimage
  - [ ]: platpak
hwcodec example:
  - [x]: combination of lacking any of libva2, libva-x11-2, libva-drm2,
    intel-media-va-driver
- [ ] federa
- [ ] arch
- [ ] arm64: my ci can't finish arm64 building

Signed-off-by: 21pages <sunboeasy@gmail.com>
This commit is contained in:
21pages 2024-12-04 17:10:10 +08:00 committed by GitHub
parent fd67be4a16
commit 3d17bf4990
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 2038 additions and 49 deletions

View file

@ -156,6 +156,7 @@ jobs:
done done
exit 1 exit 1
fi fi
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-${{ matrix.job.vcpkg-triplet }}-rel-out.log" || true
shell: bash shell: bash
- name: Build rustdesk - name: Build rustdesk
@ -316,6 +317,7 @@ jobs:
done done
exit 1 exit 1
fi fi
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-${{ matrix.job.vcpkg-triplet }}-rel-out.log" || true
shell: bash shell: bash
- name: Build rustdesk - name: Build rustdesk
@ -519,6 +521,7 @@ jobs:
done done
exit 1 exit 1
fi fi
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-${{ matrix.job.vcpkg-triplet }}-rel-out.log" || true
shell: bash shell: bash
- name: Install Rust toolchain - name: Install Rust toolchain
@ -637,6 +640,7 @@ jobs:
os: macos-13, #macos-latest or macos-14 use M1 now, https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#:~:text=14%20GB-,macos%2Dlatest%20or%20macos%2D14,-The%20macos%2Dlatestlabel os: macos-13, #macos-latest or macos-14 use M1 now, https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#:~:text=14%20GB-,macos%2Dlatest%20or%20macos%2D14,-The%20macos%2Dlatestlabel
extra-build-args: "", extra-build-args: "",
arch: x86_64, arch: x86_64,
vcpkg-triplet: x64-osx,
} }
- { - {
target: aarch64-apple-darwin, target: aarch64-apple-darwin,
@ -644,6 +648,7 @@ jobs:
# extra-build-args: "--disable-flutter-texture-render", # disable this for mac, because we see a lot of users reporting flickering both on arm and x64, and we can not confirm if texture rendering has better performance if htere is no vram, https://github.com/rustdesk/rustdesk/issues/6296 # extra-build-args: "--disable-flutter-texture-render", # disable this for mac, because we see a lot of users reporting flickering both on arm and x64, and we can not confirm if texture rendering has better performance if htere is no vram, https://github.com/rustdesk/rustdesk/issues/6296
extra-build-args: "--screencapturekit", extra-build-args: "--screencapturekit",
arch: aarch64, arch: aarch64,
vcpkg-triplet: arm64-osx,
} }
steps: steps:
- name: Export GitHub Actions cache environment variables - name: Export GitHub Actions cache environment variables
@ -755,6 +760,7 @@ jobs:
done done
exit 1 exit 1
fi fi
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-${{ matrix.job.vcpkg-triplet }}-rel-out.log" || true
- name: Show version information (Rust, cargo, Clang) - name: Show version information (Rust, cargo, Clang)
shell: bash shell: bash
@ -931,7 +937,6 @@ jobs:
libpam0g-dev \ libpam0g-dev \
libpulse-dev \ libpulse-dev \
libva-dev \ libva-dev \
libvdpau-dev \
libxcb-randr0-dev \ libxcb-randr0-dev \
libxcb-shape0-dev \ libxcb-shape0-dev \
libxcb-xfixes0-dev \ libxcb-xfixes0-dev \
@ -1208,7 +1213,6 @@ jobs:
libpam0g-dev \ libpam0g-dev \
libpulse-dev \ libpulse-dev \
libva-dev \ libva-dev \
libvdpau-dev \
libxcb-randr0-dev \ libxcb-randr0-dev \
libxcb-shape0-dev \ libxcb-shape0-dev \
libxcb-xfixes0-dev \ libxcb-xfixes0-dev \
@ -1440,7 +1444,7 @@ jobs:
- name: Install vcpkg dependencies - name: Install vcpkg dependencies
if: matrix.job.arch == 'x86_64' || env.UPLOAD_ARTIFACT == 'true' if: matrix.job.arch == 'x86_64' || env.UPLOAD_ARTIFACT == 'true'
run: | run: |
sudo apt install -y libva-dev libvdpau-dev sudo apt install -y libva-dev && apt show libva-dev
if ! $VCPKG_ROOT/vcpkg \ if ! $VCPKG_ROOT/vcpkg \
install \ install \
--triplet ${{ matrix.job.vcpkg-triplet }} \ --triplet ${{ matrix.job.vcpkg-triplet }} \
@ -1454,6 +1458,7 @@ jobs:
done done
exit 1 exit 1
fi fi
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-${{ matrix.job.vcpkg-triplet }}-rel-out.log" || true
shell: bash shell: bash
- name: Restore bridge files - name: Restore bridge files
@ -1498,7 +1503,6 @@ jobs:
libpam0g-dev \ libpam0g-dev \
libpulse-dev \ libpulse-dev \
libva-dev \ libva-dev \
libvdpau-dev \
libxcb-randr0-dev \ libxcb-randr0-dev \
libxcb-shape0-dev \ libxcb-shape0-dev \
libxcb-xfixes0-dev \ libxcb-xfixes0-dev \
@ -1771,7 +1775,6 @@ jobs:
libpam0g-dev \ libpam0g-dev \
libpulse-dev \ libpulse-dev \
libva-dev \ libva-dev \
libvdpau-dev \
libxcb-randr0-dev \ libxcb-randr0-dev \
libxcb-shape0-dev \ libxcb-shape0-dev \
libxcb-xfixes0-dev \ libxcb-xfixes0-dev \
@ -1859,6 +1862,7 @@ jobs:
done done
exit 1 exit 1
fi fi
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-${{ matrix.job.vcpkg-triplet }}-rel-out.log" || true
# build rustdesk # build rustdesk
python3 ./res/inline-sciter.py python3 ./res/inline-sciter.py
export CARGO_INCREMENTAL=0 export CARGO_INCREMENTAL=0

6
Cargo.lock generated
View file

@ -3064,8 +3064,8 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[package]] [[package]]
name = "hwcodec" name = "hwcodec"
version = "0.7.0" version = "0.7.1"
source = "git+https://github.com/rustdesk-org/hwcodec#da7dab48df19edb5a7138ff9e01bf9f148b523da" source = "git+https://github.com/rustdesk-org/hwcodec#835e599ed229e4e01b6fa3566e02ea45c73e2e9c"
dependencies = [ dependencies = [
"bindgen 0.59.2", "bindgen 0.59.2",
"cc", "cc",
@ -3519,7 +3519,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e310b3a6b5907f99202fcdb4960ff45b93735d7c7d96b760fcff8db2dc0e103d" checksum = "e310b3a6b5907f99202fcdb4960ff45b93735d7c7d96b760fcff8db2dc0e103d"
dependencies = [ dependencies = [
"cfg-if 1.0.0", "cfg-if 1.0.0",
"windows-targets 0.48.5", "windows-targets 0.52.5",
] ]
[[package]] [[package]]

View file

@ -47,9 +47,9 @@ AppDir:
- libasound2 - libasound2
- libsystemd0 - libsystemd0
- curl - curl
- libva2
- libva-drm2 - libva-drm2
- libva-x11-2 - libva-x11-2
- libvdpau1
- libgstreamer-plugins-base1.0-0 - libgstreamer-plugins-base1.0-0
- gstreamer1.0-pipewire - gstreamer1.0-pipewire
- libwayland-client0 - libwayland-client0

View file

@ -50,9 +50,9 @@ AppDir:
- libasound2 - libasound2
- libsystemd0 - libsystemd0
- curl - curl
- libva2
- libva-drm2 - libva-drm2
- libva-x11-2 - libva-x11-2
- libvdpau1
- libgstreamer-plugins-base1.0-0 - libgstreamer-plugins-base1.0-0
- gstreamer1.0-pipewire - gstreamer1.0-pipewire
- libwayland-client0 - libwayland-client0

View file

@ -111,7 +111,7 @@ def make_parser():
'--hwcodec', '--hwcodec',
action='store_true', action='store_true',
help='Enable feature hwcodec' + ( help='Enable feature hwcodec' + (
'' if windows or osx else ', need libva-dev, libvdpau-dev.') '' if windows or osx else ', need libva-dev.')
) )
parser.add_argument( parser.add_argument(
'--vram', '--vram',
@ -298,7 +298,7 @@ Version: %s
Architecture: %s Architecture: %s
Maintainer: rustdesk <info@rustdesk.com> Maintainer: rustdesk <info@rustdesk.com>
Homepage: https://rustdesk.com Homepage: https://rustdesk.com
Depends: libgtk-3-0, libxcb-randr0, libxdo3, libxfixes3, libxcb-shape0, libxcb-xfixes0, libasound2, libsystemd0, curl, libva-drm2, libva-x11-2, libvdpau1, libgstreamer-plugins-base1.0-0, libpam0g, gstreamer1.0-pipewire%s Depends: libgtk-3-0, libxcb-randr0, libxdo3, libxfixes3, libxcb-shape0, libxcb-xfixes0, libasound2, libsystemd0, curl, libva2, libva-drm2, libva-x11-2, libgstreamer-plugins-base1.0-0, libpam0g, gstreamer1.0-pipewire%s
Recommends: libayatana-appindicator3-1 Recommends: libayatana-appindicator3-1
Description: A remote control software. Description: A remote control software.

View file

@ -68,6 +68,7 @@ function build {
pushd "$SCRIPTDIR/.." pushd "$SCRIPTDIR/.."
$VCPKG_ROOT/vcpkg install --triplet $VCPKG_TARGET --x-install-root="$VCPKG_ROOT/installed" $VCPKG_ROOT/vcpkg install --triplet $VCPKG_TARGET --x-install-root="$VCPKG_ROOT/installed"
popd popd
head -n 100 "${VCPKG_ROOT}/buildtrees/ffmpeg/build-$VCPKG_TARGET-rel-out.log" || true
echo "*** [$ANDROID_ABI][Finished] Build and install vcpkg dependencies" echo "*** [$ANDROID_ABI][Finished] Build and install vcpkg dependencies"
if [ -d "$VCPKG_ROOT/installed/arm-neon-android" ]; then if [ -d "$VCPKG_ROOT/installed/arm-neon-android" ]; then

View file

@ -7,7 +7,7 @@ arch=('x86_64')
url="" url=""
license=('AGPL-3.0') license=('AGPL-3.0')
groups=() groups=()
depends=('gtk3' 'xdotool' 'libxcb' 'libxfixes' 'alsa-lib' 'libva' 'libvdpau' 'libappindicator-gtk3' 'pam' 'gst-plugins-base' 'gst-plugin-pipewire') depends=('gtk3' 'xdotool' 'libxcb' 'libxfixes' 'alsa-lib' 'libva' 'libappindicator-gtk3' 'pam' 'gst-plugins-base' 'gst-plugin-pipewire')
makedepends=() makedepends=()
checkdepends=() checkdepends=()
optdepends=() optdepends=()

View file

@ -5,7 +5,7 @@ Summary: RPM package
License: GPL-3.0 License: GPL-3.0
URL: https://rustdesk.com URL: https://rustdesk.com
Vendor: rustdesk <info@rustdesk.com> Vendor: rustdesk <info@rustdesk.com>
Requires: gtk3 libxcb1 xdotool libXfixes3 alsa-utils libXtst6 libvdpau1 libva2 pam gstreamer-plugins-base gstreamer-plugin-pipewire Requires: gtk3 libxcb1 xdotool libXfixes3 alsa-utils libXtst6 libva2 pam gstreamer-plugins-base gstreamer-plugin-pipewire
Recommends: libayatana-appindicator3-1 Recommends: libayatana-appindicator3-1
Provides: libdesktop_drop_plugin.so()(64bit), libdesktop_multi_window_plugin.so()(64bit), libfile_selector_linux_plugin.so()(64bit), libflutter_custom_cursor_plugin.so()(64bit), libflutter_linux_gtk.so()(64bit), libscreen_retriever_plugin.so()(64bit), libtray_manager_plugin.so()(64bit), liburl_launcher_linux_plugin.so()(64bit), libwindow_manager_plugin.so()(64bit), libwindow_size_plugin.so()(64bit), libtexture_rgba_renderer_plugin.so()(64bit) Provides: libdesktop_drop_plugin.so()(64bit), libdesktop_multi_window_plugin.so()(64bit), libfile_selector_linux_plugin.so()(64bit), libflutter_custom_cursor_plugin.so()(64bit), libflutter_linux_gtk.so()(64bit), libscreen_retriever_plugin.so()(64bit), libtray_manager_plugin.so()(64bit), liburl_launcher_linux_plugin.so()(64bit), libwindow_manager_plugin.so()(64bit), libwindow_size_plugin.so()(64bit), libtexture_rgba_renderer_plugin.so()(64bit)

View file

@ -5,7 +5,7 @@ Summary: RPM package
License: GPL-3.0 License: GPL-3.0
URL: https://rustdesk.com URL: https://rustdesk.com
Vendor: rustdesk <info@rustdesk.com> Vendor: rustdesk <info@rustdesk.com>
Requires: gtk3 libxcb libxdo libXfixes alsa-lib libvdpau libva pam gstreamer1-plugins-base Requires: gtk3 libxcb libxdo libXfixes alsa-lib libva pam gstreamer1-plugins-base
Recommends: libayatana-appindicator-gtk3 Recommends: libayatana-appindicator-gtk3
Provides: libdesktop_drop_plugin.so()(64bit), libdesktop_multi_window_plugin.so()(64bit), libfile_selector_linux_plugin.so()(64bit), libflutter_custom_cursor_plugin.so()(64bit), libflutter_linux_gtk.so()(64bit), libscreen_retriever_plugin.so()(64bit), libtray_manager_plugin.so()(64bit), liburl_launcher_linux_plugin.so()(64bit), libwindow_manager_plugin.so()(64bit), libwindow_size_plugin.so()(64bit), libtexture_rgba_renderer_plugin.so()(64bit) Provides: libdesktop_drop_plugin.so()(64bit), libdesktop_multi_window_plugin.so()(64bit), libfile_selector_linux_plugin.so()(64bit), libflutter_custom_cursor_plugin.so()(64bit), libflutter_linux_gtk.so()(64bit), libscreen_retriever_plugin.so()(64bit), libtray_manager_plugin.so()(64bit), liburl_launcher_linux_plugin.so()(64bit), libwindow_manager_plugin.so()(64bit), libwindow_size_plugin.so()(64bit), libtexture_rgba_renderer_plugin.so()(64bit)

View file

@ -3,7 +3,7 @@ Version: 1.1.9
Release: 0 Release: 0
Summary: RPM package Summary: RPM package
License: GPL-3.0 License: GPL-3.0
Requires: gtk3 libxcb1 xdotool libXfixes3 alsa-utils libXtst6 libvdpau1 libva2 pam gstreamer-plugins-base gstreamer-plugin-pipewire Requires: gtk3 libxcb1 xdotool libXfixes3 alsa-utils libXtst6 libva2 pam gstreamer-plugins-base gstreamer-plugin-pipewire
Recommends: libayatana-appindicator3-1 Recommends: libayatana-appindicator3-1
%description %description

View file

@ -5,7 +5,7 @@ Summary: RPM package
License: GPL-3.0 License: GPL-3.0
URL: https://rustdesk.com URL: https://rustdesk.com
Vendor: rustdesk <info@rustdesk.com> Vendor: rustdesk <info@rustdesk.com>
Requires: gtk3 libxcb libxdo libXfixes alsa-lib libvdpau1 libva2 pam gstreamer1-plugins-base Requires: gtk3 libxcb libxdo libXfixes alsa-lib libva2 pam gstreamer1-plugins-base
Recommends: libayatana-appindicator-gtk3 Recommends: libayatana-appindicator-gtk3
%description %description

View file

@ -1,17 +1,17 @@
From 51ac90d8084f7b153eac5133765fa9d0365aa239 Mon Sep 17 00:00:00 2001 From ed73f8f6494d74ae47218f9503c7e3de385d9253 Mon Sep 17 00:00:00 2001
From: 21pages <sunboeasy@gmail.com> From: 21pages <sunboeasy@gmail.com>
Date: Sun, 24 Nov 2024 14:17:39 +0800 Date: Sun, 24 Nov 2024 14:17:39 +0800
Subject: [PATCH 1/4] mediacodec changing bitrate Subject: [PATCH 1/2] mediacodec changing bitrate
Signed-off-by: 21pages <sunboeasy@gmail.com> Signed-off-by: 21pages <sunboeasy@gmail.com>
--- ---
libavcodec/mediacodec_wrapper.c | 101 ++++++++++++++++++++++++++++++++ libavcodec/mediacodec_wrapper.c | 97 +++++++++++++++++++++++++++++++++
libavcodec/mediacodec_wrapper.h | 7 +++ libavcodec/mediacodec_wrapper.h | 7 +++
libavcodec/mediacodecenc.c | 18 ++++++ libavcodec/mediacodecenc.c | 18 ++++++
3 files changed, 126 insertions(+) 3 files changed, 122 insertions(+)
diff --git a/libavcodec/mediacodec_wrapper.c b/libavcodec/mediacodec_wrapper.c diff --git a/libavcodec/mediacodec_wrapper.c b/libavcodec/mediacodec_wrapper.c
index 306359071e..1ab4e673f6 100644 index 306359071e..7edb38a7d7 100644
--- a/libavcodec/mediacodec_wrapper.c --- a/libavcodec/mediacodec_wrapper.c
+++ b/libavcodec/mediacodec_wrapper.c +++ b/libavcodec/mediacodec_wrapper.c
@@ -35,6 +35,8 @@ @@ -35,6 +35,8 @@
@ -145,25 +145,7 @@ index 306359071e..1ab4e673f6 100644
}; };
typedef struct FFAMediaFormatNdk { typedef struct FFAMediaFormatNdk {
@@ -1893,6 +1982,8 @@ typedef struct FFAMediaCodecNdk { @@ -2428,6 +2517,12 @@ static int mediacodec_ndk_signalEndOfInputStream(FFAMediaCodec *ctx)
// Available since API level 26.
media_status_t (*setInputSurface)(AMediaCodec*, ANativeWindow *);
media_status_t (*signalEndOfInputStream)(AMediaCodec *);
+
+ media_status_t (*setParameters)(AMediaCodec *, const AMediaFormat *format);
} FFAMediaCodecNdk;
static const FFAMediaFormat media_format_ndk;
@@ -2154,6 +2245,8 @@ static inline FFAMediaCodec *ndk_codec_create(int method, const char *arg) {
GET_SYMBOL(setInputSurface, 0)
GET_SYMBOL(signalEndOfInputStream, 0)
+ GET_SYMBOL(setParameters, 0)
+
#undef GET_SYMBOL
switch (method) {
@@ -2428,6 +2521,12 @@ static int mediacodec_ndk_signalEndOfInputStream(FFAMediaCodec *ctx)
return 0; return 0;
} }
@ -176,7 +158,7 @@ index 306359071e..1ab4e673f6 100644
static const FFAMediaFormat media_format_ndk = { static const FFAMediaFormat media_format_ndk = {
.class = &amediaformat_ndk_class, .class = &amediaformat_ndk_class,
@@ -2489,6 +2588,8 @@ static const FFAMediaCodec media_codec_ndk = { @@ -2489,6 +2584,8 @@ static const FFAMediaCodec media_codec_ndk = {
.getConfigureFlagEncode = mediacodec_ndk_getConfigureFlagEncode, .getConfigureFlagEncode = mediacodec_ndk_getConfigureFlagEncode,
.cleanOutputBuffers = mediacodec_ndk_cleanOutputBuffers, .cleanOutputBuffers = mediacodec_ndk_cleanOutputBuffers,
.signalEndOfInputStream = mediacodec_ndk_signalEndOfInputStream, .signalEndOfInputStream = mediacodec_ndk_signalEndOfInputStream,
@ -260,5 +242,5 @@ index d3bf27cb7f..621529d686 100644
// 1. Serious error // 1. Serious error
// 2. Got a packet success // 2. Got a packet success
-- --
2.43.0.windows.1 2.34.1

File diff suppressed because it is too large Load diff

View file

@ -15,6 +15,7 @@ vcpkg_from_github(
patch/0003-amf-colorspace.patch patch/0003-amf-colorspace.patch
patch/0004-videotoolbox-changing-bitrate.patch patch/0004-videotoolbox-changing-bitrate.patch
patch/0005-mediacodec-changing-bitrate.patch patch/0005-mediacodec-changing-bitrate.patch
patch/0006-dlopen-libva.patch
) )
if(SOURCE_PATH MATCHES " ") if(SOURCE_PATH MATCHES " ")
@ -79,13 +80,15 @@ else()
endif() endif()
if(VCPKG_TARGET_IS_LINUX) if(VCPKG_TARGET_IS_LINUX)
string(APPEND OPTIONS "\ string(APPEND OPTIONS "\
--target-os=linux \ --target-os=linux \
--enable-pthreads \ --enable-pthreads \
--disable-vdpau \
") ")
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
else() else()
string(APPEND OPTIONS "\ string(APPEND OPTIONS "\
--enable-cuda \ --enable-cuda \
--enable-ffnvcodec \ --enable-ffnvcodec \
--enable-encoder=h264_nvenc \ --enable-encoder=h264_nvenc \
@ -100,8 +103,9 @@ if(VCPKG_TARGET_IS_LINUX)
--enable-encoder=h264_vaapi \ --enable-encoder=h264_vaapi \
--enable-encoder=hevc_vaapi \ --enable-encoder=hevc_vaapi \
") ")
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
string(APPEND OPTIONS "\ string(APPEND OPTIONS "\
--enable-cuda_llvm \ --enable-cuda_llvm \
") ")
endif() endif()
@ -129,7 +133,8 @@ elseif(VCPKG_TARGET_IS_WINDOWS)
--enable-libmfx \ --enable-libmfx \
--enable-encoder=h264_qsv \ --enable-encoder=h264_qsv \
--enable-encoder=hevc_qsv \ --enable-encoder=hevc_qsv \
") ")
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
set(LIB_MACHINE_ARG /machine:x86) set(LIB_MACHINE_ARG /machine:x86)
string(APPEND OPTIONS " --arch=i686 --enable-cross-compile") string(APPEND OPTIONS " --arch=i686 --enable-cross-compile")
@ -191,6 +196,7 @@ endif()
string(APPEND VCPKG_COMBINED_C_FLAGS_DEBUG " -I \"${CURRENT_INSTALLED_DIR}/include\"") string(APPEND VCPKG_COMBINED_C_FLAGS_DEBUG " -I \"${CURRENT_INSTALLED_DIR}/include\"")
string(APPEND VCPKG_COMBINED_C_FLAGS_RELEASE " -I \"${CURRENT_INSTALLED_DIR}/include\"") string(APPEND VCPKG_COMBINED_C_FLAGS_RELEASE " -I \"${CURRENT_INSTALLED_DIR}/include\"")
if(VCPKG_TARGET_IS_WINDOWS) if(VCPKG_TARGET_IS_WINDOWS)
string(APPEND VCPKG_COMBINED_C_FLAGS_DEBUG " -I \"${CURRENT_INSTALLED_DIR}/include/mfx\"") string(APPEND VCPKG_COMBINED_C_FLAGS_DEBUG " -I \"${CURRENT_INSTALLED_DIR}/include/mfx\"")
string(APPEND VCPKG_COMBINED_C_FLAGS_RELEASE " -I \"${CURRENT_INSTALLED_DIR}/include/mfx\"") string(APPEND VCPKG_COMBINED_C_FLAGS_RELEASE " -I \"${CURRENT_INSTALLED_DIR}/include/mfx\"")
@ -204,9 +210,11 @@ if(VCPKG_DETECTED_CMAKE_C_COMPILER)
get_filename_component(CC_filename "${VCPKG_DETECTED_CMAKE_C_COMPILER}" NAME) get_filename_component(CC_filename "${VCPKG_DETECTED_CMAKE_C_COMPILER}" NAME)
set(ENV{CC} "${CC_filename}") set(ENV{CC} "${CC_filename}")
string(APPEND OPTIONS " --cc=${CC_filename}") string(APPEND OPTIONS " --cc=${CC_filename}")
if(VCPKG_HOST_IS_WINDOWS) if(VCPKG_HOST_IS_WINDOWS)
string(APPEND OPTIONS " --host_cc=${CC_filename}") string(APPEND OPTIONS " --host_cc=${CC_filename}")
endif() endif()
list(APPEND prog_env "${CC_path}") list(APPEND prog_env "${CC_path}")
endif() endif()
@ -284,6 +292,7 @@ if(VCPKG_HOST_IS_WINDOWS)
else() else()
# find_program(SHELL bash) # find_program(SHELL bash)
endif() endif()
list(REMOVE_DUPLICATES prog_env) list(REMOVE_DUPLICATES prog_env)
vcpkg_add_to_path(PREPEND ${prog_env}) vcpkg_add_to_path(PREPEND ${prog_env})