diff options
author | Kyle Guinn <elyk03@gmail.com> | 2015-06-09 00:45:43 -0500 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2015-06-14 07:55:32 +0700 |
commit | 2783a26a3976ed77b67262a2711375e76b38e40a (patch) | |
tree | 478fe2040ce6b1843d4f580eb43ef468176ea55d /academic/metis | |
parent | 0008ce81ce41555f501979771b908b7140901180 (diff) | |
download | slackbuilds-2783a26a3976ed77b67262a2711375e76b38e40a.tar.gz |
academic/metis: Fix potential linking problems.
_LARGEFILE64_SOURCE should be unnecessary. _FILE_OFFSET_BITS=64
does the real work to link to the 64-bit functions.
Don't abuse libtool's -version-info to make the library version
match the package version. These do not necessarily correspond.
Remove the .la files; these are causing libtool to overlink. This
should save you from needlessly rebuilding some dependent packages
in the future.
Signed-off-by: Kyle Guinn <elyk03@gmail.com>
Diffstat (limited to 'academic/metis')
-rw-r--r-- | academic/metis/autotoolize.diff | 26 | ||||
-rw-r--r-- | academic/metis/metis.SlackBuild | 35 |
2 files changed, 45 insertions, 16 deletions
diff --git a/academic/metis/autotoolize.diff b/academic/metis/autotoolize.diff index 1b87aa13c8..93c16ea6b3 100644 --- a/academic/metis/autotoolize.diff +++ b/academic/metis/autotoolize.diff @@ -4,7 +4,7 @@ new file mode 100644 +++ b/Doc/Makefile.am @@ -0,0 +1,5 @@ +dist_noinst_DATA = manual.ps -+pdf_DATA = manual.pdf ++dist_pdf_DATA = manual.pdf + +%.pdf: %.ps + ps2pdf $< @@ -80,14 +80,14 @@ new file mode 100644 +lib_LTLIBRARIES = libmetis.la +libmetis_la_SOURCES = $(SRC) +libmetis_la_LIBADD = -lm -+libmetis_la_LDFLAGS = -no-undefined -version-info 4:3:0 ++libmetis_la_LDFLAGS = -no-undefined -release $(PACKAGE_VERSION) diff --git a/Makefile.am b/Makefile.am new file mode 100644 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,5 @@ +SUBDIRS = Lib Programs Graphs Test Doc -+EXTRA_DIST = CHANGES FILES INSTALL LICENSE VERSION metis.pc.in ++EXTRA_DIST = CHANGES FILES INSTALL LICENSE VERSION + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = metis.pc @@ -139,23 +139,32 @@ diff --git a/configure.ac b/configure.ac new file mode 100644 --- /dev/null +++ b/configure.ac -@@ -0,0 +1,31 @@ -+AC_PREREQ([2.68]) -+AC_INIT([METIS],[4.0.3],[karypis@cs.umn.edu]) +@@ -0,0 +1,40 @@ ++# -*- Autoconf -*- ++# Process this file with autoconf to produce a configure script. ++ ++AC_PREREQ([2.69]) ++AC_INIT([METIS],[4.0.3],[karypis@cs.umn.edu],[metis],[http://glaros.dtc.umn.edu/gkhome/metis/metis/overview]) +AC_CONFIG_SRCDIR([Lib/metis.h]) -+AC_CONFIG_HEADER([config.h]) ++AC_CONFIG_HEADERS([config.h]) +AM_INIT_AUTOMAKE([foreign]) +LT_INIT + ++# Checks for programs. +AC_PROG_INSTALL +AC_PROG_CC + +LIBS_SAVED=$LIBS + ++# Checks for libraries. +AC_CHECK_LIB([m], [sqrt]) + ++# Checks for header files. +AC_CHECK_HEADERS([malloc.h stdlib.h string.h strings.h]) + ++# Checks for typedefs, structures, and compiler characteristics. ++ ++# Checks for library functions. +AC_FUNC_MALLOC +AC_FUNC_REALLOC +AC_CHECK_FUNCS([pow sqrt strtol]) @@ -175,7 +184,7 @@ diff --git a/metis.pc.in b/metis.pc.in new file mode 100644 --- /dev/null +++ b/metis.pc.in -@@ -0,0 +1,11 @@ +@@ -0,0 +1,12 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ @@ -184,6 +193,7 @@ new file mode 100644 +Name: @PACKAGE_NAME@ +Description: Software for partitioning unstructured graphs and meshes +Version: @PACKAGE_VERSION@ ++URL: @PACKAGE_URL@ +Libs: -L${libdir} -lmetis +Libs.private: -lm +Cflags: -I${includedir}/metis diff --git a/academic/metis/metis.SlackBuild b/academic/metis/metis.SlackBuild index 061b7362c7..b8ba91ac58 100644 --- a/academic/metis/metis.SlackBuild +++ b/academic/metis/metis.SlackBuild @@ -1,11 +1,30 @@ #!/bin/sh # Slackware build script for METIS -# Written by Kyle Guinn <elyk03@gmail.com> + +# Copyright 2015 Kyle Guinn <elyk03@gmail.com>, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=metis VERSION=${VERSION:-4.0.3} -BUILD=${BUILD:-2} +BUILD=${BUILD:-3} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -38,7 +57,7 @@ else fi # Recommended by SuiteSparse -SLKCFLAGS="$SLKCFLAGS -fexceptions -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE" +SLKCFLAGS="$SLKCFLAGS -fexceptions -D_FILE_OFFSET_BITS=64" set -e @@ -49,11 +68,7 @@ rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION chown -R root:root . -find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ - -o -perm 511 \) -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ - -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +chmod -R u+w,go-w,a+rX-st . patch -p1 < $CWD/autotoolize.diff autoreconf -vif @@ -68,11 +83,15 @@ CFLAGS="$SLKCFLAGS" \ --infodir=/usr/info \ --docdir=/usr/doc/$PRGNAM-$VERSION \ --enable-shared \ + --disable-dependency-tracking \ --build=$ARCH-slackware-linux make +make check make install-strip DESTDIR=$PKG +find $PKG/usr/lib${LIBDIRSUFFIX} -name '*.la' -delete + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild |