From 8e41348edab95d3ddad0cce56be3876443c55275 Mon Sep 17 00:00:00 2001 From: Ruben Rodriguez Date: Sun, 8 Mar 2015 15:20:27 +0000 Subject: Added buildscripts and needed changes to crosscompile packages for MacOS, Windows and Android --- makeicecat | 132 +++++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 116 insertions(+), 16 deletions(-) (limited to 'makeicecat') diff --git a/makeicecat b/makeicecat index 8d9032d..857e2ee 100644 --- a/makeicecat +++ b/makeicecat @@ -251,9 +251,12 @@ sed "s/^MOZ_PKG_NAME\t.*/MOZ_PKG_NAME\t\t:= icecat/;" debian/build/config.mk -i ############################################################################### # Branding files -rm browser/branding/* -rf -cp -a $DATA/branding/ browser/branding/official -cp -a $DATA/branding/ browser/branding/nightly +rm browser/branding/* mobile/android/branding/* -rf +cp -a $DATA/branding/icecat/ browser/branding/official +cp -a $DATA/branding/icecat/ browser/branding/nightly +cp -a $DATA/branding/icecatmobile/ mobile/android/branding/official +cp -a $DATA/branding/icecatmobile/ mobile/android/branding/unofficial +cp -a $DATA/branding/icecatmobile/ mobile/android/branding/nightly cat << EOF > debian/config/branch.mk CHANNEL = release MOZ_WANT_UNIT_TESTS = 0 @@ -270,7 +273,7 @@ cp $DATA/abouthome -a browser/base/content sed '/mozilla.*png/d' -i ./browser/base/jar.mn # Delete stuff we don't use and that may contain trademaked logos -rm -rf ./browser/metro ./mobile ./addon-sdk/source/doc/static-files/media ./browser/themes/windows ./browser/themes/osx ./b2b +rm -rf ./browser/metro ./addon-sdk/source/doc/static-files/media ./b2g # Custom bookmarks cp $DATA/bookmarks.html.in browser/locales/generic/profile/bookmarks.html.in @@ -302,32 +305,49 @@ sed -i 's/Mozilla\ Project<\/a>/> browser/app/profile/icecat.js +sed "s/MOZ_PAY=1/MOZ_PAY=0/" -i browser/confvars.sh +sed "s/MOZ_APP_VENDOR=.*/MOZ_APP_VENDOR=GNU/" -i browser/confvars.sh +sed "s/MOZ_SERVICES_HEALTHREPORT=1/MOZ_SERVICES_HEALTHREPORT=0/" -i browser/confvars.sh +sed "s/MOZ_SERVICES_FXACCOUNTS=1/MOZ_SERVICES_FXACCOUNTS=0/" -i browser/confvars.sh +sed "s/MOZ_SERVICES_METRICS=1/MOZ_SERVICES_METRICS=0/" -i browser/confvars.sh +sed "s/MOZ_SERVICES_SYNC=1/MOZ_SERVICES_SYNC=0/" -i browser/confvars.sh +echo "MOZ_DATA_REPORTING=0" >> browser/confvars.sh +sed 's/mozilla-esr/gnu-esr/' -i browser/confvars.sh + +############################################################################### +# Mobile +############################################################################### + +sed "s/MOZ_APP_VERSION=.*/MOZ_APP_VERSION=$FFVERSION/" -i mobile/android/confvars.sh +sed "s/MOZ_APP_VENDOR=.*/MOZ_APP_VENDOR=GNU/" -i mobile/android/confvars.sh +sed "s/MOZ_PAY=1/MOZ_PAY=0/" -i mobile/android/confvars.sh +sed "s/MOZ_SERVICES_HEALTHREPORT=1/MOZ_SERVICES_HEALTHREPORT=0/" -i mobile/android/confvars.sh +sed "s/MOZ_SERVICES_FXACCOUNTS=1/MOZ_SERVICES_FXACCOUNTS=0/" -i mobile/android/confvars.sh +sed "s/MOZ_DATA_REPORTING=1/MOZ_DATA_REPORTING=0/" -i mobile/android/confvars.sh +cat << EOF >> mobile/android/confvars.sh + +MOZ_SERVICES_SYNC=0 +MOZ_SERVICES_METRICS=0 +MOZ_DEVICES=0 +MOZ_NATIVE_DEVICES=0 +MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 +EOF + +cat $DATA/settings.js >> mobile/android/app/mobile.js + +cat << EOF > mobile/locales/en-US/chrome/region.properties +browser.search.defaultenginename=DuckDuckGo +browser.search.order.1=DuckDuckGo +browser.search.order.2=Google +browser.search.order.3=Yahoo +EOF + +cp $DATA/preferences_vendor.xml mobile/android/base/resources/xml/preferences_vendor.xml + +sed '/public static void checkAndNotifyPolicy/ s/{/{ if(true) return;/; /private static void notifyDataPolicy/ s/{/{ if(true) return;/ ' mobile/android/base/DataReportingNotification.java -i + +cp -a $DATA/android-images/core/* mobile/android/themes/core/images/ +cp -a $DATA/android-images/resources mobile/android/base + +sed '/DISABLED/s/false/true/' -i mobile/android/base/background/announcements/AnnouncementsConstants.java.in + +############################################################################### +# Macos packaging +############################################################################### + +cat << EOF > ./build/package/mac_osx/pkg-dmg +#!/bin/sh +set -e +export LC_ALL=C + +cd \$2 +DMGFILE=\$4 + +# We need group readability for some Macs to be able to handle /Applications +# installation. Still unclear exactly why this is -- it is not dependent on +# OSX version... +find . -executable -exec chmod 750 {} \; +find . ! -executable -exec chmod 640 {} \; + +find . -type f | sed -e 's/^\.\///' | sort | xargs -i echo "{}={}" > /tmp/filelist.txt +find . -type l | sed -e 's/^\.\///' | sort | xargs -i echo "{}={}" >> /tmp/filelist.txt + +mkisofs -D -V "\$6" -no-pad -R -apple -o /tmp/icecat-uncompressed.dmg -path-list /tmp/filelist.txt -graft-points -gid 20 -dir-mode 0750 -new-dir-mode 0750 + + +dmg dmg /tmp/icecat-uncompressed.dmg \$4 +rm /tmp/icecat-uncompressed.dmg +EOF + ############################################################################### # Extensions ############################################################################### @@ -377,7 +471,7 @@ EOF # Add extensions to manifest for EXTENSION in $(ls $DATA/extensions/); do -sed "/Browser Chrome Files/s%$%\n@BINPATH@/browser/extensions/$EXTENSION/*%" -i browser/installer/package-manifest.in +sed "/Browser Chrome Files/s%$%\n@BINPATH@/browser/extensions/$EXTENSION/*%" -i browser/installer/package-manifest.in mobile/android/installer/package-manifest.in #echo "DIRS += ['$EXTENSION']" >> browser/app/profile/extensions/moz.build #touch browser/app/profile/extensions/$EXTENSION/moz.build done @@ -391,6 +485,12 @@ libs:: cp -a \$(topsrcdir)/extensions/gnu/* \$(DIST)/icecat/browser/extensions/ EOF +cat << EOF >> mobile/android/app/Makefile.in +libs:: + mkdir -p \$(DIST)/bin/distribution + cp -a \$(topsrcdir)/extensions/gnu/ \$(DIST)/bin/distribution/extensions +EOF + #sed '/^make-package-internal:/ s%$%\n\tcp $(topsrcdir)/extensions.gnu/* $(DIST)/icecat/browser/extensions -a%' -i toolkit/mozapps/installer/packager.mk #sed '/972ce4c6/ s%$%\n/extensions.gnu/* @MOZ_ADDONDIR@/extensions%' -i debian/icecat.install.in -- cgit v1.2.3