# URL: http://www.mozilla.com/firefox/
# Maintainer: Fredrik Rinnestam, fredrik at crux dot nu
# Arch Maintainer: CRUX-ARM System Team, devel at crux-arm dot nu
-# Depends on: nss, libidl, gtk, python, alsa-lib, yasm, mesa3d
+# Depends on: nss, unzip, autoconf-2.13, zip, libidl, gtk, gtk3, python, alsa-lib, xorg-libxt, yasm, mesa3d
name=firefox
-version=18.0.1
+version=50.0.2
release=1
-source=(ftp://ftp.mozilla.org/pub/firefox/releases/$version/source/firefox-$version.source.tar.bz2
- mozconfig)
+source=(http://ftp.mozilla.org/pub/firefox/releases/$version/source/firefox-$version.source.tar.xz
+ firefox-install-dir.patch firefox.desktop)
build() {
- export MOZ_CO_PROJECT=browser
- export BUILD_OFFICIAL=1
- export MOZILLA_OFFICIAL=1
- export MOZILLA_FIVE_HOME=/usr/lib/firefox
+ cd $name-$version
- cd mozilla-release
- sed -e "s/#CFLAGS#/$CFLAGS/" $SRC/mozconfig > .mozconfig
- ./configure --disable-webrtc
+ sed -i '/^ftfntfmt.h/ i freetype/ftfntfmt.h' config/system-headers
+ # stupid workaround
+ sed -i '2,7d' js/src/configure
+ patch -p1 -i $SRC/firefox-install-dir.patch
- #mozilla sucks: BZ #824381
- mkdir $SRC/mozilla-release/js/src/.deps
+ cat <<- EOF > .mozconfig
+ mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-shared
+ mk_add_options MOZ_MAKE_FLAGS="$MAKEFLAGS -s"
+ ac_add_options --prefix=/usr
+ ac_add_options --enable-default-toolkit=cairo-gtk3
+ ac_add_options --with-system-jpeg
+ ac_add_options --with-system-zlib
+ ac_add_options --with-system-png
+ ac_add_options --with-system-nspr
+ ac_add_options --with-system-nss
+ ac_add_options --enable-system-ffi
+ ac_add_options --enable-system-pixman
+ ac_add_options --enable-system-sqlite
+ ac_add_options --enable-system-cairo
+ ac_add_options --with-pthreads
+ ac_add_options --enable-optimize="$CFLAGS"
+ ac_add_options --enable-official-branding
+ ac_add_options --with-distribution-id=nu.crux-arm
+ ac_add_options --enable-extensions=default,-gnomevfs
+ #ac_add_options --enable-elf-hack
+ #ac_add_options --disable-static
+ ac_add_options --disable-tests
+ ac_add_options --disable-dbus
+ ac_add_options --disable-debug
+ ac_add_options --disable-updater
+ ac_add_options --disable-gnomeui
+ ac_add_options --disable-crashreporter
+ ac_add_options --disable-necko-wifi
+ ac_add_options --disable-pulseaudio
+ ac_add_options --disable-gconf
+EOF
- make
+ sed "s|\['-march=armv7-a', '-mthumb', '-mfloat-abi=softfp', '-mfpu=neon'\]|\[\]|g" -i media/libvpx/moz.build
+ make -f client.mk build
+ make -f client.mk DESTDIR=$PKG install
+
+ mkdir -p $PKG/usr/share/pixmaps
+ ln -s /usr/lib/firefox/browser/chrome/icons/default/default48.png $PKG/usr/share/pixmaps/firefox_default48.png
+ install -D -m 0644 $SRC/firefox.desktop $PKG/usr/share/applications/firefox.desktop
+ # Remove crap
+ rm $PKG/usr/lib/firefox/browser/features/{firefox@getpocket.com.xpi,webcompat@mozilla.org.xpi}
- install -d \
- $PKG$MOZILLA_FIVE_HOME \
- $PKG/usr/bin \
- $PKG/usr/share/idl/firefox \
- $PKG/usr/include/firefox
-
- cp -rL dist/bin/* $PKG$MOZILLA_FIVE_HOME
- ln -s /usr/lib/firefox/firefox $PKG/usr/bin/firefox
-
- # devel stuff
- cp -frL dist/idl/* $PKG/usr/share/idl/firefox/
- cp -frL dist/include/* $PKG/usr/include/firefox/
-
- install -d $PKG/etc/ld.so.conf.d
- echo "/usr/lib/$name" > $PKG/etc/ld.so.conf.d/$name.conf
+ mkdir -p $PKG/etc/revdep.d
+ echo "/usr/lib/firefox" > $PKG/etc/revdep.d/firefox
}