Radix cross Linux

The main Radix cross Linux repository contains the build scripts of packages, which have the most complete and common functionality for desktop machines

452 Commits   2 Branches   1 Tag
Index: patches
===================================================================
Index: src/buildtools/config/linux.pri
===================================================================
--- src/buildtools/config/linux.pri	(nonexistent)
+++ src/buildtools/config/linux.pri	(revision 5)
@@ -0,0 +1,167 @@
+include(common.pri)
+include(functions.pri)
+
+defineReplace(extractCFlag) {
+    return($$qtwebengine_extractCFlag($$1))
+}
+
+QT_FOR_CONFIG += gui-private webenginecore-private pdf-private
+
+gn_args += \
+    use_cups=false \
+    use_gio=false \
+    use_gnome_keyring=false \
+    use_udev=true \
+    use_bundled_fontconfig=false \
+    use_sysroot=false \
+    enable_session_service=false \
+    is_cfi=false \
+    use_ozone=true \
+    use_x11=false \
+    ozone_auto_platforms=false \
+    ozone_platform_headless=false \
+    ozone_platform_external=true \
+    ozone_platform=\"qt\" \
+    ozone_extra_path=\"$$QTWEBENGINE_ROOT/src/core/ozone/ozone_extra.gni\"
+
+use_gold_linker: gn_args += use_gold=true
+else: gn_args += use_gold=false
+
+use_lld_linker: gn_args += use_lld=true
+else: gn_args += use_lld=false
+
+clang {
+    clang_full_path = $$which($${QMAKE_CXX})
+    # Remove the "/bin/clang++" part.
+    clang_prefix = $$section(clang_full_path, /, 0, -3)
+    gn_args += \
+        is_clang=true \
+        clang_use_chrome_plugins=false \
+        clang_use_default_sample_profile=false \
+        clang_base_path=\"$${clang_prefix}\"
+
+    linux-clang-libc++: gn_args += use_libcxx=true
+} else {
+    gn_args += \
+        is_clang=false
+}
+
+cross_compile:!host_build {
+    TOOLCHAIN_SYSROOT = $$[QT_SYSROOT]
+    !isEmpty(TOOLCHAIN_SYSROOT): gn_args += target_sysroot=\"$${TOOLCHAIN_SYSROOT}\"
+}
+
+contains(QT_ARCH, "arm") {
+    # Extract ARM specific compiler options that we have to pass to gn,
+    # but let gn figure out a default if an option is not present.
+    MTUNE = $$extractCFlag("-mtune=.*")
+    !isEmpty(MTUNE): gn_args += arm_tune=\"$$MTUNE\"
+
+    MFLOAT = $$extractCFlag("-mfloat-abi=.*")
+    !isEmpty(MFLOAT): gn_args += arm_float_abi=\"$$MFLOAT\"
+
+    MARCH = $$extractCFlag("-march=.*")
+    !isEmpty(MARCH): gn_args += arm_arch=\"$$MARCH\"
+
+    MARMV = $$replace(MARCH, "armv",)
+    !isEmpty(MARMV) {
+        MARMV = $$split(MARMV,)
+        MARMV = $$member(MARMV, 0)
+        lessThan(MARMV, 6): error("$$MARCH architecture is not supported")
+        gn_args += arm_version=$$MARMV
+    }
+
+    # TODO: use neon detection from qtbase
+    !lessThan(MARMV, 8) {
+        gn_args += arm_use_neon=true
+    } else {
+        MFPU = $$extractCFlag("-mfpu=.*")
+        !isEmpty(MFPU):contains(MFPU, ".*neon.*") {
+            gn_args += arm_use_neon=true
+        } else {
+            gn_args += arm_use_neon=false
+            # If the toolchain does not explicitly specify to use NEON instructions
+            # we use arm_neon_optional for ARMv7
+            equals(MARMV, 7): gn_args += arm_optionally_use_neon=true
+        }
+    }
+}
+
+contains(QT_ARCH, "mips") {
+    MARCH = $$extractCFlag("-march=.*")
+    !isEmpty(MARCH) {
+        equals(MARCH, "mips32r6"): gn_args += mips_arch_variant=\"r6\"
+        else: equals(MARCH, "mips32r2"): gn_args += mips_arch_variant=\"r2\"
+        else: equals(MARCH, "mips32"): gn_args += mips_arch_variant=\"r1\"
+    } else {
+        contains(QMAKE_CFLAGS, "mips32r6"): gn_args += mips_arch_variant=\"r6\"
+        else: contains(QMAKE_CFLAGS, "mips32r2"): gn_args += mips_arch_variant=\"r2\"
+        else: contains(QMAKE_CFLAGS, "mips32"): gn_args += mips_arch_variant=\"r1\"
+    }
+
+    contains(QMAKE_CFLAGS, "-mmsa"): gn_args += mips_use_msa=true
+
+    contains(QMAKE_CFLAGS, "-mdsp2"): gn_args += mips_dsp_rev=2
+    else: contains(QMAKE_CFLAGS, "-mdsp"): gn_args += mips_dsp_rev=1
+}
+
+host_build {
+    gn_args += custom_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:host\"
+    GN_HOST_CPU = $$gnArch($$QT_ARCH)
+    gn_args += host_cpu=\"$$GN_HOST_CPU\"
+    # Don't bother trying to use system libraries in this case
+    gn_args += use_glib=false
+} else {
+    gn_args += custom_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:target\"
+    gn_args += host_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:host\"
+    GN_TARGET_CPU = $$gnArch($$QT_ARCH)
+    cross_compile {
+        gn_args += v8_snapshot_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:v8_snapshot\"
+        # FIXME: we should set host_cpu in case host-toolchain doesn't match os arch,
+        # but currently we don't it available at this point
+        gn_args += target_cpu=\"$$GN_TARGET_CPU\"
+    } else {
+        gn_args += host_cpu=\"$$GN_TARGET_CPU\"
+    }
+    !contains(QT_CONFIG, no-pkg-config) {
+        # Strip '>2 /dev/null' from $$pkgConfigExecutable()
+        PKGCONFIG = $$first($$list($$pkgConfigExecutable()))
+        gn_args += pkg_config=\"$$PKGCONFIG\"
+        PKG_CONFIG_HOST = $$(GN_PKG_CONFIG_HOST)
+        pkgConfigLibDir = $$(PKG_CONFIG_LIBDIR)
+        pkgConfigSysrootDir = $$(PKG_CONFIG_SYSROOT_DIR)
+        isEmpty(PKG_CONFIG_HOST): cross_compile {
+            !isEmpty(pkgConfigLibDir)|!isEmpty(pkgConfigSysrootDir) {
+                PKG_CONFIG_HOST = $$pkgConfigHostExecutable()
+            }
+        }
+        isEmpty(PKG_CONFIG_HOST): PKG_CONFIG_HOST = $$QMAKE_PKG_CONFIG_HOST
+        gn_args += host_pkg_config=\"$$PKG_CONFIG_HOST\"
+    }
+
+    qtConfig(webengine-system-zlib) {
+        qtConfig(webengine-system-minizip): gn_args += use_system_zlib=true use_system_minizip=true
+        gn_args += pdfium_use_system_zlib=true
+    }
+
+    qtConfig(webengine-system-png) {
+        gn_args += use_system_libpng=true pdfium_use_system_libpng=true
+    }
+
+    qtConfig(webengine-system-jpeg) {
+        gn_args += use_system_libjpeg=true
+    } else {
+        gn_args += use_system_libjpeg=false
+    }
+    qtConfig(webengine-system-freetype) {
+        gn_args += use_system_freetype=true
+    } else {
+        gn_args += use_system_freetype=false
+    }
+    qtConfig(webengine-system-harfbuzz) {
+        gn_args += use_system_harfbuzz=true
+    } else {
+        gn_args += use_system_harfbuzz=false
+    }
+    gn_args += use_glib=false
+}
Index: src/buildtools/config
===================================================================
--- src/buildtools/config	(nonexistent)
+++ src/buildtools/config	(revision 5)

Property changes on: src/buildtools/config
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: src/buildtools
===================================================================
--- src/buildtools	(nonexistent)
+++ src/buildtools	(revision 5)

Property changes on: src/buildtools
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: src
===================================================================
--- src	(nonexistent)
+++ src	(revision 5)

Property changes on: src
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: .
===================================================================
--- .	(nonexistent)
+++ .	(revision 5)

Property changes on: .
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,73 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~