1SECTION = "x11/utils" 2DEPENDS += "gnu-config-native virtual/libintl libxt libxi zip-native gtk+" 3 4SRC_URI += "file://mozconfig" 5 6inherit pkgconfig 7 8EXTRA_OECONF = "--target=${TARGET_SYS} --host=${BUILD_SYS} \ 9 --with-toolchain-prefix=${TARGET_SYS}- \ 10 --prefix=${prefix} \ 11 --libdir=${libdir}" 12EXTRA_OECONF:append:arm = " --disable-elf-hack" 13EXTRA_OECONF:append:x86 = " --disable-elf-hack" 14EXTRA_OECONF:append:x86-64 = " --disable-elf-hack" 15SELECTED_OPTIMIZATION = "-Os -fsigned-char -fno-strict-aliasing" 16 17export CROSS_COMPILE = "1" 18export MOZCONFIG = "${B}/mozconfig" 19export MOZ_OBJDIR = "${S}/firefox-build-dir" 20 21export HOST_CC = "${BUILD_CC}" 22export HOST_CXX = "${BUILD_CXX}" 23export HOST_CFLAGS = "${BUILD_CFLAGS}" 24export HOST_CXXFLAGS = "${BUILD_CXXFLAGS}" 25export HOST_LDFLAGS = "${BUILD_LDFLAGS}" 26export HOST_RANLIB = "${BUILD_RANLIB}" 27export HOST_AR = "${BUILD_AR}" 28 29mozilla_run_mach() { 30 export SHELL="/bin/sh" 31 export RUSTFLAGS="${RUSTFLAGS} -Cpanic=unwind" 32 export RUST_HOST="${BUILD_SYS}" 33 export RUST_TARGET="${TARGET_SYS}" 34 export RUST_TARGET_PATH="${STAGING_LIBDIR_NATIVE}/rustlib" 35 export BINDGEN_MFLOAT="${@bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', '-mfloat-abi=hard', '', d)}" 36 export BINDGEN_CFLAGS="--target=${TARGET_SYS} --sysroot=${RECIPE_SYSROOT} ${BINDGEN_MFLOAT}" 37 38 export INSTALL_SDK=0 39 export DESTDIR="${D}" 40 41 ./mach "$@" 42} 43 44mozilla_do_configure() { 45 install -D -m 0644 ${WORKDIR}/mozconfig ${MOZCONFIG} 46 if [ ! -z "${EXTRA_OECONF}" ] ; then 47 for f in ${EXTRA_OECONF} 48 do 49 echo ac_add_options $f >> ${MOZCONFIG} 50 done 51 fi 52 if [ ! -z "${PACKAGECONFIG_CONFARGS}" ] ; then 53 for f in ${PACKAGECONFIG_CONFARGS} 54 do 55 echo ac_add_options $f >> ${MOZCONFIG} 56 done 57 fi 58 echo ac_add_options --enable-optimize=\"${SELECTED_OPTIMIZATION}\" \ 59 >> ${MOZCONFIG} 60 61 mozilla_run_mach configure 62} 63 64mozilla_do_compile() { 65 mozilla_run_mach build 66} 67 68mozilla_do_install() { 69 mozilla_run_mach install 70} 71 72EXPORT_FUNCTIONS do_configure do_compile do_install 73