diff --git a/satellites/palemoon.sat b/satellites/palemoon.sat index cbfc3cf..81a4ad9 100644 --- a/satellites/palemoon.sat +++ b/satellites/palemoon.sat @@ -1,94 +1,84 @@ # The Pale Moon team recommends building with GCC 4.9. While other versions like 5.x are known to work, they're unsupported. name=Pale-Moon -version=27.9.4 -version_gcc=4.9.4 +version=28.0.0 version_autoconf=2.13 -dlextract "https://github.com/MoonchildProductions/$name/archive/${version}_Release/$name-${version}_Release.tar.gz" \ - '9b0bd412351b69b20b6af317cd323fa6' +dlextract "https://github.com/MoonchildProductions/UXP/archive/PM${version}_Release.tar.gz" \ + '962a423e7e66833caa46bed50e8fd70f' extrafile 'palemoon.desktop' -( name=gcc version="$version_gcc" - dlextract "https://ftp.gnu.org/gnu/$name/$name-$version/$name-$version.tar.bz2" \ - '87c24a4090c1577ba817ec6882602491' -) ( name=autoconf version="$version_autoconf" dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ '9de56d4a161a723228220b0f425dc711' ) _ -( cd "gcc-$version_gcc" - sed -i -e 's/\.\/fixinc\.sh/-c true/' gcc/Makefile.in - mkdir build; cd build - ../configure \ - --prefix="$PWD/../install" \ - --disable-bootstrap \ - --disable-multilib \ - --disable-nls \ - --enable-languages=c++ - make - make install -) - ( cd "autoconf-$version_autoconf" ./configure --prefix="$PWD/install" --program-suffix=-$version_autoconf make make install ) -cd "$name-${version}_Release" +cd "UXP-PM${version}_Release" + +get_conf() { + if [ "$1" = "NSS_MINVER" ]; then + sed -ne 's/^ *AM_PATH_NSS(\([^,]*\),.*/\1/p' old-configure.in + else + sed -ne 's/^'"$1"'=\(.*\)/\1/p' old-configure.in + fi +} cat > .mozconfig << EOF +mk_add_options AUTOCLOBBER=1 +mk_add_options MOZ_OBJDIR="$PWD/pmbuild/" +ac_add_options --enable-application=palemoon + +ac_add_options --enable-optimize="-O2" + # Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding. #ac_add_options --enable-official-branding #export MOZILLA_OFFICIAL=1 -mk_add_options MOZ_CO_PROJECT=browser -ac_add_options --enable-application=browser - -mk_add_options MOZ_OBJDIR="$PWD/pmbuild/" - -ac_add_options --enable-optimize="-O2 -msse2 -mfpmath=sse" +ac_add_options --enable-default-toolkit=cairo-gtk2 +ac_add_options --enable-jemalloc +ac_add_options --enable-strip ac_add_options --with-pthreads -ac_add_options --disable-installer +ac_add_options --disable-tests +ac_add_options --disable-eme +ac_add_options --disable-parental-controls +ac_add_options --disable-accessibility +ac_add_options --disable-webrtc +ac_add_options --disable-gamepad +ac_add_options --disable-necko-wifi ac_add_options --disable-updater -ac_add_options --enable-release -ac_add_options --enable-devtools -ac_add_options --enable-jemalloc -ac_add_options --enable-shared-js - -ac_add_options --enable-strip - ac_add_options --x-libraries="/$dir_prefix/$dir_lib" # The section before this is kept up to date with https://developer.palemoon.org/Developer_Guide:Build_Instructions/Pale_Moon/Linux#head:Mozconfig_Files (with minor changes) # The following section are my additions. # Use system libraries (autoconf-2.13 && ./configure --help | grep system) -ac_add_options --with-system-nspr -ac_add_options --with-system-libevent -ac_add_options --with-system-nss -ac_add_options --with-system-jpeg -ac_add_options --with-system-zlib -ac_add_options --with-system-bz2 -ac_add_options --with-system-webp -#ac_add_options --with-system-png - The APNG patch is not upstrean +ac_add_options --with-system-ffi $(pkg-config --atleast-version=1.4.0 hunspell && echo ac_add_options --enable-system-hunspell) -ac_add_options --enable-system-ffi -ac_add_options --with-system-libvpx -$(pkg-config --atleast-version="$(sed -ne 's/^SQLITE_VERSION=\(.*\)/\1/p' configure.in)" sqlite3 && echo ac_add_options --enable-system-sqlite) ac_add_options --enable-system-cairo ac_add_options --enable-system-pixman -ac_add_options --with-system-icu +$(pkg-config --atleast-version="$(get_conf SQLITE_VERSION)" sqlite3 && echo ac_add_options --enable-system-sqlite) +ac_add_options --with-system-bz2 +$(pkg-config --atleast-version=58.1 icu-i18n && echo ac_add_options --with-system-icu) +ac_add_options --with-system-jpeg +ac_add_options --with-system-libevent +ac_add_options --with-system-libvpx +$(pkg-config --atleast-version="$(get_conf NSPR_MINVER)" nspr && echo ac_add_options --with-system-nspr) +$(pkg-config --atleast-version="$(get_conf NSS_MINVER)" nss && echo ac_add_options --with-system-nss) +#ac_add_options --with-system-png - The APNG patch is not upstream +ac_add_options --with-system-zlib # Make pulseaudio support optional $(pkg-config --exists libpulse || echo ac_add_options --disable-pulseaudio) EOF -#$(pkg-config --atleast-version="$(sed -ne 's/^ AM_PATH_NSS(\([^,]*\),.*/\1/p' configure.in)" nss && echo ac_add_options --with-system-nss) # This program is about as picky about compiler flags as it is about the compiler version. # Sigh... @@ -96,7 +86,7 @@ export MOZ_MAKE_FLAGS="$MAKEFLAGS" unset CFLAGS CXXFLAGS LDFLAGS MAKEFLAGS # Build -PATH="$PWD/../gcc-$version_gcc/install/bin:$PWD/../autoconf-$version_autoconf/install/bin:$PATH" \ +PATH="$PWD/../autoconf-$version_autoconf/install/bin:$PATH" \ make -f client.mk build # Install