From d4cc75ec1b8cc36fa796bd470d520e051cb6196c Mon Sep 17 00:00:00 2001 From: Nirbheek Chauhan Date: Wed, 17 Apr 2019 17:08:39 +0530 Subject: Move cross-files to the data subdirectory We will add more data soon. --- cross-files/README.md | 40 -------------------------------- cross-files/android_arm64_api28.txt | 16 ------------- cross-files/mingw_w64_x86-64.txt | 17 -------------- data/cross-files/README.md | 40 ++++++++++++++++++++++++++++++++ data/cross-files/android_arm64_api28.txt | 16 +++++++++++++ data/cross-files/mingw_w64_x86-64.txt | 17 ++++++++++++++ 6 files changed, 73 insertions(+), 73 deletions(-) delete mode 100644 cross-files/README.md delete mode 100644 cross-files/android_arm64_api28.txt delete mode 100644 cross-files/mingw_w64_x86-64.txt create mode 100644 data/cross-files/README.md create mode 100644 data/cross-files/android_arm64_api28.txt create mode 100644 data/cross-files/mingw_w64_x86-64.txt diff --git a/cross-files/README.md b/cross-files/README.md deleted file mode 100644 index 469ef12..0000000 --- a/cross-files/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# Cross compiling GStreamer with gst-build - -GStreamer can be cross compiled for various platforms using gst-build. However, -only dependencies that are ported to the Meson build system will be built. It is -recommended to use Cerbero to cross compile GStreamer when other external -dependencies are required. - -Once the toolchain is installed and a Meson cross file is created, to build -GStreamer simply run for example: `meson --cross-file cross-files/mingw_w64_x86-64.txt builddir`. - -## Android - -Requires Android API level >= 28, previous versions are missing *iconv* dependency. - -- Download and extract the [NDK](https://developer.android.com/ndk/) -- Create a standalone toolchain targeting your arch and API level: -`./build/tools/make_standalone_toolchain.py --arch $arch --api $api --install-dir $toolchain_path` -- Create a Meson cross file, you can use `android_arm64_api28.txt` as example - and change CPU architectures and toolchain path. - -Notes: -- On fedora the Android NDK requires the `ncurses-compat-libs` package. - -## Windows - -GStreamer can be cross compiled for Windows using mingw packaged in most -distribution. - -The Meson cross file `mingw_w64_x86-64.txt` can be used when targeting amd64 -architecture, or adapted for i686 arch. - -### Fedora - -- Install the toolchain packages: `mingw64-gcc`, `mingw64-gcc-c++`. Fedora - provides many other optional dependencies that could be installed as well. - For example: `mingw64-gettext`, `mingw64-libffi`, `mingw64-zlib`. - -### Ubuntu - -- Install the toolchain package: `gcc-mingw-w64`. diff --git a/cross-files/android_arm64_api28.txt b/cross-files/android_arm64_api28.txt deleted file mode 100644 index 27b803d..0000000 --- a/cross-files/android_arm64_api28.txt +++ /dev/null @@ -1,16 +0,0 @@ -[host_machine] -system = 'android' -cpu_family = 'aarch64' -cpu = 'arm64' -endian = 'little' - -[properties] -c_args = ['--sysroot', '/opt/android-arm64-api28/sysroot'] -cpp_args = ['--sysroot', '/opt/android-arm64-api28/sysroot'] - -[binaries] -c = '/opt/android-arm64-api28/bin/aarch64-linux-android-clang' -cpp = '/opt/android-arm64-api28/bin/aarch64-linux-android-clang++' -ar = '/opt/android-arm64-api28/bin/aarch64-linux-android-ar' -strip = '/opt/android-arm64-api28/bin/aarch64-linux-android-strip' -pkgconfig = 'false' diff --git a/cross-files/mingw_w64_x86-64.txt b/cross-files/mingw_w64_x86-64.txt deleted file mode 100644 index 1897b68..0000000 --- a/cross-files/mingw_w64_x86-64.txt +++ /dev/null @@ -1,17 +0,0 @@ -[host_machine] -system = 'windows' -cpu_family = 'x86_64' -cpu = 'x86_64' -endian = 'little' - -[properties] -c_args = [] -c_link_args = [] - -[binaries] -c = 'x86_64-w64-mingw32-gcc' -cpp = 'x86_64-w64-mingw32-g++' -ar = 'x86_64-w64-mingw32-ar' -strip = 'x86_64-w64-mingw32-strip' -pkgconfig = 'x86_64-w64-mingw32-pkg-config' -windres = 'x86_64-w64-mingw32-windres' diff --git a/data/cross-files/README.md b/data/cross-files/README.md new file mode 100644 index 0000000..469ef12 --- /dev/null +++ b/data/cross-files/README.md @@ -0,0 +1,40 @@ +# Cross compiling GStreamer with gst-build + +GStreamer can be cross compiled for various platforms using gst-build. However, +only dependencies that are ported to the Meson build system will be built. It is +recommended to use Cerbero to cross compile GStreamer when other external +dependencies are required. + +Once the toolchain is installed and a Meson cross file is created, to build +GStreamer simply run for example: `meson --cross-file cross-files/mingw_w64_x86-64.txt builddir`. + +## Android + +Requires Android API level >= 28, previous versions are missing *iconv* dependency. + +- Download and extract the [NDK](https://developer.android.com/ndk/) +- Create a standalone toolchain targeting your arch and API level: +`./build/tools/make_standalone_toolchain.py --arch $arch --api $api --install-dir $toolchain_path` +- Create a Meson cross file, you can use `android_arm64_api28.txt` as example + and change CPU architectures and toolchain path. + +Notes: +- On fedora the Android NDK requires the `ncurses-compat-libs` package. + +## Windows + +GStreamer can be cross compiled for Windows using mingw packaged in most +distribution. + +The Meson cross file `mingw_w64_x86-64.txt` can be used when targeting amd64 +architecture, or adapted for i686 arch. + +### Fedora + +- Install the toolchain packages: `mingw64-gcc`, `mingw64-gcc-c++`. Fedora + provides many other optional dependencies that could be installed as well. + For example: `mingw64-gettext`, `mingw64-libffi`, `mingw64-zlib`. + +### Ubuntu + +- Install the toolchain package: `gcc-mingw-w64`. diff --git a/data/cross-files/android_arm64_api28.txt b/data/cross-files/android_arm64_api28.txt new file mode 100644 index 0000000..27b803d --- /dev/null +++ b/data/cross-files/android_arm64_api28.txt @@ -0,0 +1,16 @@ +[host_machine] +system = 'android' +cpu_family = 'aarch64' +cpu = 'arm64' +endian = 'little' + +[properties] +c_args = ['--sysroot', '/opt/android-arm64-api28/sysroot'] +cpp_args = ['--sysroot', '/opt/android-arm64-api28/sysroot'] + +[binaries] +c = '/opt/android-arm64-api28/bin/aarch64-linux-android-clang' +cpp = '/opt/android-arm64-api28/bin/aarch64-linux-android-clang++' +ar = '/opt/android-arm64-api28/bin/aarch64-linux-android-ar' +strip = '/opt/android-arm64-api28/bin/aarch64-linux-android-strip' +pkgconfig = 'false' diff --git a/data/cross-files/mingw_w64_x86-64.txt b/data/cross-files/mingw_w64_x86-64.txt new file mode 100644 index 0000000..1897b68 --- /dev/null +++ b/data/cross-files/mingw_w64_x86-64.txt @@ -0,0 +1,17 @@ +[host_machine] +system = 'windows' +cpu_family = 'x86_64' +cpu = 'x86_64' +endian = 'little' + +[properties] +c_args = [] +c_link_args = [] + +[binaries] +c = 'x86_64-w64-mingw32-gcc' +cpp = 'x86_64-w64-mingw32-g++' +ar = 'x86_64-w64-mingw32-ar' +strip = 'x86_64-w64-mingw32-strip' +pkgconfig = 'x86_64-w64-mingw32-pkg-config' +windres = 'x86_64-w64-mingw32-windres' -- cgit v1.2.3