mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-22 19:44:21 +01:00
development/f2c: Updated for version 20240504.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
parent
8ff6bd82e0
commit
2b19444e40
4 changed files with 47 additions and 61 deletions
|
@ -4,19 +4,22 @@ f2c is a Fortran-to-C converter.
|
|||
This package includes libf2c, which must be linked to the resulting C
|
||||
code.
|
||||
|
||||
Thus the general idea is: f2c foo.f; gcc foo.c -lf2c
|
||||
The general idea is: f2c foo.f; gcc foo.c -lf2c -lm
|
||||
|
||||
Or use the fc script provided in the docs directory. Beware, fc is
|
||||
also an (unrelated) bash builtin.
|
||||
|
||||
f2c used to use two separate libraries, libi77 and libf77. These are
|
||||
now rolled together into libf2c. NB libf2c carries a separate version
|
||||
number from f2c itself. The version number associated with the
|
||||
f2c once used two separate libraries, libi77 and libf77. These are
|
||||
now rolled together into libf2c. NB libf2c carries separate version
|
||||
numbers from f2c itself. The version number associated with the
|
||||
SlackBuilds package is the f2c version number.
|
||||
|
||||
If combining with gfortran, you may want to use gfortran -ff2c. See
|
||||
the gfortran man page.
|
||||
|
||||
Multiple files must be downloaded because netlib doesn't provide a
|
||||
convenient single tarball.
|
||||
The official Netlib repository provides only the most recent version,
|
||||
with no renaming of files on update. To avoid checksum errors
|
||||
following each f2c update, the .info file points to a unofficial,
|
||||
version-specific tarball maintained at a third-party site.
|
||||
|
||||
This SlackBuild builds only the shared library.
|
||||
|
|
|
@ -2,9 +2,11 @@
|
|||
|
||||
# Slackware build script for f2c
|
||||
|
||||
# Copyright 2017-2023, Judah Milgram, Washington DC
|
||||
# Copyright 2017-2024, Judah Milgram, Washington DC
|
||||
# All rights reserved.
|
||||
#
|
||||
# Assistance of Moritz Schaefer gratefully acknowledged.
|
||||
#
|
||||
# Redistribution and use of this script, with or without modification, is
|
||||
# permitted provided that the following conditions are met:
|
||||
#
|
||||
|
@ -22,10 +24,11 @@
|
|||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
|
||||
cd $(dirname $0) ; CWD=$(pwd)
|
||||
|
||||
PRGNAM=f2c
|
||||
VERSION=${VERSION:-20240130} # f2c version, not libf2c.
|
||||
VERSION=${VERSION:-20240504}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
PKGTYPE=${PKGTYPE:-tgz}
|
||||
|
@ -48,16 +51,19 @@ PKG=$TMP/package-$PRGNAM
|
|||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
||||
if [ "$ARCH" = "i586" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC -DNON_UNIX_STDIO -march=i586 -mtune=i686"
|
||||
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "i686" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC -DNON_UNIX_STDIO -march=i686 -mtune=i686"
|
||||
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC -DNON_UNIX_STDIO"
|
||||
SLKCFLAGS="-O2 -fPIC"
|
||||
LIBDIRSUFFIX="64"
|
||||
elif [ "$ARCH" = "aarch64" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC"
|
||||
LIBDIRSUFFIX="64"
|
||||
else
|
||||
SLKCFLAGS="-O2 -fPIC -DNON_UNIX_STDIO"
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
fi
|
||||
|
||||
|
@ -67,13 +73,10 @@ rm -rf $PKG
|
|||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM-$VERSION
|
||||
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
|
||||
cd $PRGNAM-$VERSION
|
||||
|
||||
mkdir -p $PRGNAM-$VERSION/libf2c
|
||||
cd $PRGNAM-$VERSION/libf2c
|
||||
unzip $CWD/libf2c.zip
|
||||
|
||||
cd $TMP/$PRGNAM-$VERSION
|
||||
tar xfvz $CWD/src.tgz
|
||||
unzip -d libf2c libf2c.zip
|
||||
|
||||
chown -R root:root .
|
||||
find -L . \
|
||||
|
@ -82,49 +85,35 @@ find -L . \
|
|||
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
|
||||
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
|
||||
|
||||
# make libf2c:
|
||||
cd $TMP/$PRGNAM-$VERSION/libf2c
|
||||
make CFLAGS="${SLKCFLAGS}" -f makefile.u
|
||||
# libf2c
|
||||
make CFLAGS="${SLKCFLAGS} -DNON_UNIX_STDIO -fPIC" -C libf2c -f makefile.u \
|
||||
signal1.h f2c.h libf2c.so
|
||||
install -D -t $PKG/usr/lib${LIBDIRSUFFIX} libf2c/libf2c.so
|
||||
|
||||
# install libf2c:
|
||||
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
|
||||
make -f makefile.u LIBDIR=$PKG/usr/lib${LIBDIRSUFFIX} install
|
||||
# f2c
|
||||
make CFLAGS="${SLKCFLAGS} -DNON_UNIX_STDIO -fPIC" -C src -f makefile.u
|
||||
install -D -t $PKG/usr/bin src/f2c
|
||||
install -m 644 -D -t $PKG/usr/include src/f2c.h
|
||||
|
||||
# make f2c:
|
||||
cd $TMP/$PRGNAM-$VERSION/src
|
||||
make CFLAGS="${SLKCFLAGS}" -f makefile.u
|
||||
# strip
|
||||
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" \
|
||||
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
||||
|
||||
# install f2c:
|
||||
mkdir -p $PKG/usr/bin
|
||||
mkdir -p $PKG/usr/include
|
||||
install -s f2c $PKG/usr/bin
|
||||
install -m 644 f2c.h $PKG/usr/include
|
||||
|
||||
# strip binaries:
|
||||
strip --strip-unneeded $PKG/usr/lib${LIBDIRSUFFIX}/libf2c.a
|
||||
strip --strip-unneeded $PKG/usr/bin/f2c
|
||||
|
||||
# install f2c man page:
|
||||
cd $TMP
|
||||
# man pages
|
||||
mkdir -p $PKG/usr/man/man1
|
||||
install -m 644 $PRGNAM-$VERSION/src/f2c.1t $PKG/usr/man/man1/f2c.1
|
||||
gzip -9 $PKG/usr/man/man1/f2c.1
|
||||
gzip -9 -c src/f2c.1t > $PKG/usr/man/man1/f2c.1.gz
|
||||
|
||||
# install docs:
|
||||
cd $TMP
|
||||
# docs:
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a $PRGNAM-$VERSION/src/Notice $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a $PRGNAM-$VERSION/src/README $PKG/usr/doc/$PRGNAM-$VERSION/README.f2c
|
||||
cp -a $PRGNAM-$VERSION/src/changes $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a $PRGNAM-$VERSION/libf2c/README $PKG/usr/doc/$PRGNAM-$VERSION/README.libf2c
|
||||
cat $CWD/fc > $PKG/usr/doc/$PRGNAM-$VERSION/fc
|
||||
cat $CWD/f2c.pdf > $PKG/usr/doc/$PRGNAM-$VERSION/f2c.pdf
|
||||
cp -a \
|
||||
00lastchange README changes f2c.pdf fc index.html src/Notice \
|
||||
$PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
# Copy the slack-desc into ./install
|
||||
# slack-desc
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
|
||||
# Make the package
|
||||
# Make package
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
|
||||
|
|
|
@ -1,14 +1,8 @@
|
|||
PRGNAM="f2c"
|
||||
VERSION="20240130"
|
||||
VERSION="20240504"
|
||||
HOMEPAGE="https://netlib.org/f2c/"
|
||||
DOWNLOAD="https://netlib.org/f2c/libf2c.zip \
|
||||
https://netlib.org/f2c/src.tgz \
|
||||
https://netlib.org/f2c/fc \
|
||||
https://netlib.org/f2c/f2c.pdf"
|
||||
MD5SUM="651b3d9cbfc9ae659166332785ac3b6e \
|
||||
3a292e0c25dbb65bf0273959a3f18bf5 \
|
||||
dcdf6afbd96204662bf10594b744cb44 \
|
||||
2a84d6d2f74412d7a288e721070d62b8"
|
||||
DOWNLOAD="https://github.com/dcjud/f2c/archive/v20240504/f2c-20240504.tar.gz"
|
||||
MD5SUM="886eb706af2333c8e078561e6e2bc505"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
REQUIRES=""
|
||||
|
|
|
@ -12,7 +12,7 @@ f2c: by S. I. Feldman, David M. Gay, Mark W. Maimone, and N. L. Schryer
|
|||
f2c:
|
||||
f2c: From netlib. Includes libf2c.
|
||||
f2c:
|
||||
f2c: The general idea: f2c foo.f; gcc foo.c -lf2c
|
||||
f2c: The general idea: f2c foo.f; gcc foo.c -lf2c -lm
|
||||
f2c:
|
||||
f2c: If combining with gfortran, see the -ff2c option in the gfortran man
|
||||
f2c: page.
|
||||
|
|
Loading…
Reference in a new issue