# fss-0002
# Note: mozilla's directories are sticky bit'd because if seamonkey is run as the root user, certain files will be created and changed to the root user
# This will cause seamonkey to segfault for every single non-root user on the system, By adding the sticky bit, this reduces the chances of that happening
#
# REPLACE_WITH_XPT_ARCH_LIBS can be:
#  x86: xptcinvoke_gcc_x86_unix.cpp xptcstubs_gcc_x86_unix.cpp
#  x86_64: xptcinvoke_x86_64_linux.cpp xptcstubs_x86_64_linux.cpp
#
# --disable-updater --disable-jsd --disable-rdf
# FIXME: seamonkey 2.2 would not compile with --disable-ldap --disable-mailnews --enable-system-sqlite
#        without these compile options, seamonkey is 20MB larger! This is very much unwanted

main:
  find -name configure -exec sed -i -e "s|/usr/include|${TC}include|g" '{}' ';'
  sed -i -e 's|REPLACE_WITH_XPT_ARCH_LIBS|xptcinvoke_gcc_x86_unix.cpp xptcstubs_gcc_x86_unix.cpp|' mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in
  sed -i -e 's|#define CHECK_FORK_PTHREAD|#define CHECK_FORK_GETPID|g' mozilla/security/nss/lib/softoken/softoken.h
  sed -i -e "s|^#! /bin/sh$|&\nPATH=\$PATH:/python/bin|" configure mozilla/configure
  sed -i -e 's|!sqlite3_compileoption_used|0; //|g' configure mozilla/configure
  ./configure $(echo $CONF | sed -e 's|--docdir=[[:alnum:][:punct:]]*||') --with-system-zlib --with-system-bz2 --with-system-png --with-system-jpeg --enable-system-cairo --enable-canvas --enable-strip --disable-tests --disable-installer --disable-accessibility --enable-svg --enable-xinerama --with-pthreads --enable-pango --disable-ctl --enable-application=suite --enable-default-toolkit=cairo-gtk2 --disable-gnomevfs --disable-gnomeui --disable-oji --enable-xft --disable-freetype2 --disable-pedantic --enable-chrome-format=jar --disable-composer --enable-reorder --disable-logging --with-default-mozilla-five-home=/lib/seamonkey --disable-parental-controls --disable-feeds --enable-storage --disable-javaxpcom --with-system-nss --with-system-nspr --disable-updater --disable-crashreporter --disable-jemalloc --disable-profilelocking --enable-system-sqlite --enable-threadsafe --enable-libnotify --enable-crypto --enable-dbus --enable-plugins --disable-webm --disable-necko-wifi --enable-ipv6 --enable-system-pixman --enable-faststart --disable-ldap --disable-mailnews --disable-libjpeg-turbo --disable-elf-hack
  sed -i -e "s|$CFLAGS||g" config/autoconf.mk mozilla/config/autoconf.mk mozilla/js/src/config/autoconf.mk
  #./configure $(echo $CONF | sed -e 's|--docdir=[[:alnum:][:punct:]]*||') --with-system-zlib --with-system-bz2 --with-system-png --with-system-jpeg --enable-system-cairo --enable-canvas --enable-strip --disable-tests --disable-installer --disable-accessibility --enable-svg --enable-xinerama --with-pthreads --enable-pango --disable-ctl --enable-application=suite --enable-default-toolkit=cairo-gtk2 --disable-gnomevfs --disable-gnomeui --disable-oji --enable-xft --disable-freetype2 --disable-pedantic --enable-chrome-format=jar --disable-composer --enable-reorder --disable-logging --with-default-mozilla-five-home=/lib/seamonkey --disable-parental-controls --disable-feeds --enable-storage --disable-javaxpcom --with-system-nss --with-system-nspr --disable-updater --disable-crashreporter --disable-jemalloc --disable-profilelocking --enable-threadsafe --enable-libnotify --enable-crypto --enable-dbus --enable-plugins --disable-webm --disable-necko-wifi --enable-ipv6 --enable-system-pixman --enable-faststart --disable-libjpeg-turbo --disable-elf-hack
  #find -name '*.mk' -exec sed -i -e 's|\-Os||g' '{}' ';'
  #find -name 'Makefile' -exec sed -i -e 's|\-Os||g' '{}' ';'
  #find -name '*.mk' -exec sed -i -e 's|\-freorder-blocks -fno-reorder-functions||g' '{}' ';'
  #find -name 'Makefile' -exec sed -i -e 's|\-freorder-blocks -fno-reorder-functions||g' '{}' ';'
  sed -i -e '/THREAD_TLS_KEYWORD/d' mozilla/mozilla-config.h
  sed -i -e '/THREAD_TLS_KEYWORD/d' comm-config.h
  sed -i -e 's|#define MOZ_DEFAULT_MOZILLA_FIVE_HOME "/lib/seamonkey.*"$|#define MOZ_DEFAULT_MOZILLA_FIVE_HOME "/lib/seamonkey"|' mozilla/mozilla-config.h
  sed -i -e 's|#define MOZ_DEFAULT_MOZILLA_FIVE_HOME "/lib/seamonkey.*"$|#define MOZ_DEFAULT_MOZILLA_FIVE_HOME "/lib/seamonkey"|' comm-config.h
  sed -i -e '/import zlib/d' mozilla/config/MozZipFile.py
  make pkgconfigdir=${TC}lib/pkgconfig/
  sed -i -e 's|^moz_libdir=.*$|moz_libdir=/lib/seamonkey|' suite/app/seamonkey
  sed -i -e 's|^moz_libdir=.*$|moz_libdir=/lib/seamonkey|' mozilla/dist/bin/seamonkey
  sed -i -e 's|^installdir[[:space:]]*= $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)|installdir = $(libdir)/$(MOZ_APP_NAME)|' config/autoconf.mk
  make pkgconfigdir=${TC}lib/pkgconfig/ install
  mkdir -vp ${TC}include/seamonkey-$version/{defaults,ldap,nss}
  rm -Rf ${TC}include/seamonkey/
  mv -v ${TC}include/seamonkey{-$version,}
  ln -vsf seamonkey /bin/webbrowser
  mkdir -vp /lib/seamonkey/distribution/bundles/
  cp -vR ${PR}noscript /lib/seamonkey/distribution/bundles/\{73a6fe31-595d-460b-a920-fcc0f8843232\}
  #cp -vR ${PR}firebug /lib/seamonkey/distribution/bundles/\{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
  cp -vR ${PR}firebug /lib/seamonkey/distribution/bundles/firebug\@software.joehewitt.com
  cp -vR ${PR}requestpolicy /lib/seamonkey/distribution/bundles/\{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a\}
  #sed -i -e '/http:\/\/getfirebug.com\/firstrun#Firebug/d' /lib/seamonkey/distribution/bundles/\{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}/content/firebug/chrome.js
  sed -i -e '/http:\/\/getfirebug.com\/firstrun#Firebug/d' /lib/seamonkey/distribution/bundles/firebug\@software.joehewitt.com/content/firebug/chrome.js
  cp -v ${PR}noscript.js /lib/seamonkey/distribution/bundles/\{73a6fe31-595d-460b-a920-fcc0f8843232\}/defaults/preferences/
  cp -v ${PR}requestpolicy.js /lib/seamonkey/distribution/bundles/\{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a\}/defaults/preferences/defaults.js
  cp -v ${PR}browser-prefs.js /lib/seamonkey/defaults/pref/
  cp -v ${PR}bookmarks.html /lib/seamonkey/defaults/profile/
  if [[ -f /bin/seamonkey-config ]] ; then mv -v /bin/seamonkey-config ${TC}bin/ ; fi
  chgrp e_web -R /bin/seamonkey /lib/seamonkey/
  chmod o-rx -R /bin/seamonkey /lib/seamonkey/
  find /lib/seamonkey -type d -exec chmod g+s '{}' ';'
  rm -Rf /share/aclocal
  cp -v ${PR}web.desktop /share/applications/
  rm -vf /lib/seamonkey/components/libstoragecomps.so # this is broken
