From 9664bee729d487bcc0a0bc35859f8e13d5421c75 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Wed, 26 Sep 2012 01:10:42 +0000 Subject: Slackware 14.0 Wed Sep 26 01:10:42 UTC 2012 Slackware 14.0 x86_64 stable is released! We're perfectionists here at Slackware, so this release has been a long time a-brewing. But we think you'll agree that it was worth the wait. Slackware 14.0 combines modern components, ease of use, and flexible configuration... our "KISS" philosophy demands it. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Thanks to everyone who helped make this happen. The Slackware team, the upstream developers, and (of course) the awesome Slackware user community. Have fun! :-) --- source/xap/seamonkey/seamonkey.SlackBuild | 84 +++++++++++++++++++++++-------- 1 file changed, 64 insertions(+), 20 deletions(-) (limited to 'source/xap/seamonkey/seamonkey.SlackBuild') diff --git a/source/xap/seamonkey/seamonkey.SlackBuild b/source/xap/seamonkey/seamonkey.SlackBuild index 6b4173e24..afc1bc963 100755 --- a/source/xap/seamonkey/seamonkey.SlackBuild +++ b/source/xap/seamonkey/seamonkey.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,9 +20,11 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=${VERSION:-$(basename $(ls seamonkey-*.tar.* | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)} -COMM=${COMM:-central} -BUILD=${BUILD:-2} +TARBALLVER=${VERSION:-$(basename $(ls seamonkey-*.tar.* | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)} +# Strip the end from beta versions: +VERSION=$(echo $TARBALLVER | cut -f 1 -d b) +COMM=${COMM:-release} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -50,7 +52,7 @@ mkdir -p $TMP $PKG/usr cd $TMP rm -rf comm-$COMM -tar xvf $CWD/seamonkey-${VERSION}.source.tar.?z* || exit 1 +tar xvf $CWD/seamonkey-${TARBALLVER}.source.tar.?z* || exit 1 cd comm-$COMM || exit 1 # Make sure the perms/ownerships are sane: @@ -71,15 +73,45 @@ endif EOF +if gcc --version | grep -q "gcc (GCC) 4.7.0" ; then + # Enable compiling with gcc-4.7.0: + sed -i '/fcntl.h/a#include ' \ + mozilla/ipc/chromium/src/base/{file_util_linux,message_pump_libevent,process_util_posix}.cc && + sed -i '/sys\/time\.h/a#include ' mozilla/ipc/chromium/src/base/time_posix.cc && + sed -i 's#\"PRIxPTR#\" PRIxPTR#g' mozilla/layout/base/tests/TestPoisonArea.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/base/search/src/nsMsgSearchAdapter.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/base/src/nsMsgFolderCompactor.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/compose/src/nsSmtpProtocol.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/imap/src/nsImapMailFolder.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/imap/src/nsImapProtocol.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/imap/src/nsImapServerResponseParser.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/local/src/nsPop3Protocol.cpp && + sed -i 's#\"CRLF#\" CRLF#g' mailnews/mime/src/mimedrft.cpp && + sed -i 's#\"MSG_LINEBREAK#\" MSG_LINEBREAK#g' mailnews/mime/src/mimemult.cpp && + sed -i 's#\"MSG_LINEBREAK#\" MSG_LINEBREAK#g' mailnews/base/src/nsMsgFolderCompactor.cpp && + sed -i 's# ""##' mozilla/browser/base/Makefile.in +fi + chown -R root:root . + +# Mozilla devs enforce using an objdir for building +# and launching configure with the absolute path +# https://developer.mozilla.org/en/Configuring_Build_Options#Building_with_an_objdir +mkdir obj +cd obj BUILD_OFFICIAL=1 MOZILLA_OFFICIAL=1 \ -./configure --prefix=/usr \ +$TMP/comm-$COMM/configure \ + --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --enable-optimize=-O2 \ + --enable-cpp-rtti \ + --enable-default-toolkit=cairo-gtk2 \ + --enable-startup-notification \ --disable-debug \ --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/seamonkey-${VERSION} \ --enable-strip \ --disable-tests \ + --disable-crashreporter \ --enable-svg \ --enable-canvas \ --disable-short-wchar \ @@ -99,6 +131,7 @@ BUILD_OFFICIAL=1 MOZILLA_OFFICIAL=1 \ --target=$ARCH-slackware-linux \ --build=$ARCH-slackware-linux + # --enable-system-cairo \ # --with-system-png make $NUMJOBS || exit 1 DESTDIR=$PKG make install || exit 1 @@ -113,16 +146,25 @@ cp -aL mozilla/dist/include/*.h $PKG/usr/include/seamonkey-${VERSION} cp -aL mozilla/dist/sdk/include/* $PKG/usr/include/seamonkey-${VERSION} # compat symlinks ( cd $PKG/usr/include/seamonkey-${VERSION} - ln -sf . js + # make install seems to install js headers into a directory now, so don't make a symlink: + #ln -sf . js + # Relocate anything that might be in the nss directory, and replace the directory with a symlink. + # make install was putting an empty directory here, which was breaking other compiles. + if [ -d nss ]; then + mv nss/* . + rmdir nss + fi ln -sf . nss ln -sf . plugin ln -sf . xpcom ) -#( cd $PKG/usr/include/seamonkey-${VERSION}/plugin -# for file in ../j*.h ; do -# ln -sf $file . -# done -#) + +# Exit obj directory: +cd .. + +# We don't need this stuff in the package: +rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/seamonkey-devel-$VERSION + chown -R root:root $PKG/usr/include/seamonkey-${VERSION} find $PKG/usr/include/seamonkey-${VERSION} -name "*.h" -type f -exec chmod 644 {} \; # Create a more generic include files symlink: @@ -144,10 +186,12 @@ done # Add symlinks for the pkgconfig files: ( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig ln -s seamonkey-js.pc js.pc - ln -s seamonkey-nspr.pc nspr.pc - ln -s seamonkey-nss.pc nss.pc + ln -s seamonkey-libxul.pc libxul.pc ln -s seamonkey-plugin.pc plugin.pc ln -s seamonkey-xpcom.pc xpcom.pc + # These are now provided by the mozilla-nss package: + #ln -s seamonkey-nspr.pc nspr.pc + #ln -s seamonkey-nss.pc nss.pc ) # Compress and if needed symlink the man pages: @@ -201,7 +245,7 @@ zcat $CWD/doinst.sh.gz | sed -e "s#usr/lib#usr/lib${LIBDIRSUFFIX}#g" \ > $PKG/install/doinst.sh cd $TMP/package-seamonkey -/sbin/makepkg -l y -c n -p $TMP/seamonkey-$VERSION-$ARCH-$BUILD.txz +/sbin/makepkg -l y -c n -p $TMP/seamonkey-$TARBALLVER-$ARCH-$BUILD.txz # Create a standalone seamonkey-solibs package for RPM, gxine, etc. rm -r $TMP/package-seamonkey-solibs @@ -231,14 +275,14 @@ seamonkey-solibs: seamonkey-solibs (Shared libraries from Seamonkey) seamonkey-solibs: seamonkey-solibs: This package contains a subset of the shared libraries from Seamonkey seamonkey-solibs: to provide runtime support for programs that require nss, nspr, and -seamonkey-solibs: js. These libraries are used in programs like RPM and gxine, and can -seamonkey-solibs: be used in others. This package is built from the Seamonkey sources -seamonkey-solibs: and is provided as a standalone runtime package for people who do not -seamonkey-solibs: want to install the entire seamonkey package (as for server use). +seamonkey-solibs: js. This package is built from the Seamonkey sources and is provided +seamonkey-solibs: as a standalone runtime package for people who do not want to install +seamonkey-solibs: the entire seamonkey package (as for server use). seamonkey-solibs: seamonkey-solibs: This package is runtime only. The include files and other files for seamonkey-solibs: development can be found in the seamonkey package. +seamonkey-solibs: EOF cd $TMP/package-seamonkey-solibs -/sbin/makepkg -l y -c n -p $TMP/seamonkey-solibs-$VERSION-$ARCH-$BUILD.txz +/sbin/makepkg -l y -c n -p $TMP/seamonkey-solibs-$TARBALLVER-$ARCH-$BUILD.txz -- cgit v1.2.3