@ -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.
# 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
name=Pale-Moon
version=27.9.4
version=28.0.0
version_gcc=4.9.4
version_autoconf=2.13
version_autoconf=2.13
dlextract "https://github.com/MoonchildProductions/$name/archive/${version}_Release/$name- ${version}_Release.tar.gz" \
dlextract "https://github.com/MoonchildProductions/UXP/archive/PM ${version}_Release.tar.gz" \
'9b0bd412351b69b20b6af317cd323fa6 '
'962a423e7e66833caa46bed50e8fd70f '
extrafile 'palemoon.desktop'
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"
( name=autoconf version="$version_autoconf"
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \
'9de56d4a161a723228220b0f425dc711'
'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"
( cd "autoconf-$version_autoconf"
./configure --prefix="$PWD/install" --program-suffix=-$version_autoconf
./configure --prefix="$PWD/install" --program-suffix=-$version_autoconf
make
make
make install
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
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.
# Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
#ac_add_options --enable-official-branding
#ac_add_options --enable-official-branding
#export MOZILLA_OFFICIAL=1
#export MOZILLA_OFFICIAL=1
mk_add_options MOZ_CO_PROJECT=browser
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --enable-application=browser
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
mk_add_options MOZ_OBJDIR="$PWD/pmbuild/"
ac_add_options --enable-optimize="-O2 -msse2 -mfpmath=sse"
ac_add_options --with-pthreads
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 --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"
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 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.
# The following section are my additions.
# Use system libraries (autoconf-2.13 && ./configure --help | grep system)
# Use system libraries (autoconf-2.13 && ./configure --help | grep system)
ac_add_options --with-system-nspr
ac_add_options --with-system-ffi
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
$(pkg-config --atleast-version=1.4.0 hunspell && echo ac_add_options --enable-system-hunspell)
$(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-cairo
ac_add_options --enable-system-pixman
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
# Make pulseaudio support optional
$(pkg-config --exists libpulse || echo ac_add_options --disable-pulseaudio)
$(pkg-config --exists libpulse || echo ac_add_options --disable-pulseaudio)
EOF
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.
# This program is about as picky about compiler flags as it is about the compiler version.
# Sigh...
# Sigh...
@ -96,7 +86,7 @@ export MOZ_MAKE_FLAGS="$MAKEFLAGS"
unset CFLAGS CXXFLAGS LDFLAGS MAKEFLAGS
unset CFLAGS CXXFLAGS LDFLAGS MAKEFLAGS
# Build
# 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
make -f client.mk build
# Install
# Install