You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.9 KiB
115 lines
3.9 KiB
# TODO: Slap the devs for relying on gcc 4.9 (It segfaults often when building with newer versions, probably due to new optimizations)
|
|
|
|
name=Pale-Moon
|
|
version=27.1.1
|
|
update_url="https://github.com/MoonchildProductions/$name/releases"
|
|
update_names="/archive/${version}_Release.tar.gz"
|
|
|
|
define_option 'pulseaudio: Build with support for PulseAudio'
|
|
|
|
dlextract "https://github.com/MoonchildProductions/$name/archive/${version}_Release/$name-${version}_Release.tar.gz" \
|
|
'a4148016d84345b081a3c5350acaa9f6'
|
|
( name=autoconf
|
|
dlextract 'http://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz' \
|
|
'9de56d4a161a723228220b0f425dc711'
|
|
)
|
|
( name=gcc
|
|
dlextract 'http://ftp.gnu.org/gnu/gcc/gcc-4.9.4/gcc-4.9.4.tar.bz2' \
|
|
'87c24a4090c1577ba817ec6882602491'
|
|
)
|
|
extrafile 'palemoon.desktop'
|
|
header_end
|
|
|
|
( cd 'autoconf-2.13'
|
|
./configure --prefix="$PWD/install" --program-suffix=-2.13
|
|
make
|
|
make install
|
|
)
|
|
|
|
( cd 'gcc-4.9.4'
|
|
mkdir build; cd build
|
|
../configure --prefix="$PWD/../install" --disable-bootstrap --enable-languages=c++
|
|
make
|
|
make install
|
|
)
|
|
|
|
cd "$name-${version}_Release"
|
|
|
|
cat > .mozconfig << EOF
|
|
# 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 --with-pthreads
|
|
|
|
ac_add_options --disable-installer
|
|
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_libdir"
|
|
|
|
# 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.
|
|
|
|
# Proper paths
|
|
ac_add_options --prefix="/$dir_prefix"
|
|
ac_add_options --bindir="/$dir_prefix/$dir_bindir"
|
|
ac_add_options --libdir="/$dir_prefix/$dir_libdir"
|
|
ac_add_options --includedir="/$dir_prefix/$dir_includedir"
|
|
ac_add_options --datadir="/$dir_prefix/$dir_datadir"
|
|
|
|
# Use system libraries (./configure --help | grep system)
|
|
ac_add_options --with-system-nspr
|
|
ac_add_options --with-system-libevent
|
|
#ac_add_options --with-system-nss - Apparently unsupported
|
|
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 --enable-system-hunspell
|
|
ac_add_options --enable-system-ffi
|
|
ac_add_options --with-system-libvpx
|
|
ac_add_options --enable-system-sqlite
|
|
ac_add_options --enable-system-cairo
|
|
ac_add_options --enable-system-pixman
|
|
ac_add_options --with-system-icu
|
|
|
|
# Make pulseaudio support optional
|
|
$(option pulseaudio && echo ac_add_options --enable-pulseaudio || echo ac_add_options --disable-pulseaudio)
|
|
EOF
|
|
|
|
PATH="$PWD/../autoconf-2.13/install/bin:$PWD/../gcc-4.9.4/install/bin:$PATH" \
|
|
make -f client.mk build
|
|
|
|
cd pmbuild
|
|
make DESTDIR="$dir_install" install
|
|
|
|
cd ../..
|
|
|
|
# Install icons
|
|
for x in 16 32 48; do
|
|
mkdir -p "$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/${x}x$x/apps"
|
|
ln -s "/$dir_prefix/$dir_libdir/palemoon-$version/browser/chrome/icons/default/default$x.png" \
|
|
"$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/${x}x$x/apps/palemoon.png"
|
|
done
|
|
mkdir -p "$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/128x128/apps"
|
|
ln -s "/$dir_prefix/$dir_libdir/palemoon-$version/browser/icons/mozicon128.png" \
|
|
"$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/128x128/apps/palemoon.png"
|
|
|
|
# Install desktop
|
|
install -Dm644 -t "$dir_install/$dir_prefix/$dir_datadir/applications" palemoon.desktop
|
|
|
|
# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab:
|
|
|