- Upgrade to 20200916, changelog at <https://www.netlib.org/f2c/changes>;
- Directly fetch from upstream; - Define the license.
This commit is contained in:
parent
5164ef6956
commit
7c4e7be942
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=557139
@ -2,33 +2,34 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= f2c
|
||||
PORTVERSION= 20060810
|
||||
PORTREVISION= 6
|
||||
PORTVERSION= 20200916
|
||||
CATEGORIES= lang
|
||||
MASTER_SITES= LOCAL/maho/f2c
|
||||
DISTNAME= ${PORTNAME}
|
||||
EXTRACT_SUFX= .tar
|
||||
MASTER_SITES= NETLIB/f2c
|
||||
DISTFILES= ${SIMPLEDIST} libf2c.zip src.tgz
|
||||
DIST_SUBDIR= ${PORTNAME}-${PORTVERSION}
|
||||
|
||||
MAINTAINER= fortran@FreeBSD.org
|
||||
COMMENT= Fortran-to-C converter and its run-time libraries
|
||||
|
||||
LICENSE= ATT
|
||||
LICENSE_NAME= Copyright of AT&T, Lucent Technologies and Bellcore
|
||||
LICENSE_FILE= ${WRKSRC}/libf2c/Notice
|
||||
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
|
||||
|
||||
BROKEN_mips= fails to compile: /usr/include/sigfpe.h: No such file or directory
|
||||
BROKEN_mips64= fails to compile: /usr/include/sigfpe.h: No such file or directory
|
||||
|
||||
EXTRACT_DEPENDS= ${UNZIP_CMD}:archivers/unzip
|
||||
|
||||
GUNZIP_CMD= minigzip -d
|
||||
USES= gmake
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
LIBVER= 2
|
||||
SIMPLEDIST= changes f2c.1 f2c.1t f2c.h f2c.pdf fc getopt.c README
|
||||
|
||||
# Set FCNAME to the name of the Fortran 77 / F2C wrapper.
|
||||
FCNAME?= fc
|
||||
PLIST_SUB= FCNAME=${FCNAME} LIBVER=${LIBVER}
|
||||
|
||||
PORTDOCS= 00lastchange README README_libf2c changes f2c.pdf permission
|
||||
PORTDOCS= README README_libf2c changes f2c.pdf
|
||||
|
||||
OPTIONS_DEFINE= DOCS FC LEAD_0
|
||||
OPTIONS_SUB= yes
|
||||
@ -37,10 +38,13 @@ FC_DESC= f77 script based on f2c
|
||||
LEAD_0_DESC= Print with leading zeros
|
||||
LEAD_0_CFLAGS= -DWANT_LEAD_0
|
||||
|
||||
post-extract:
|
||||
cd ${WRKSRC} && ${FIND} . -name "*.gz" | ${XARGS} ${GUNZIP_CMD}
|
||||
cd ${WRKSRC} && ${UNZIP_CMD} libf2c.zip
|
||||
${CP} -p ${WRKSRC}/libf2c/README ${WRKSRC}/README_libf2c
|
||||
do-extract:
|
||||
${MKDIR} ${WRKSRC}/libf2c
|
||||
.for f in ${SIMPLEDIST}
|
||||
${CP} ${_DISTDIR}/${f} ${WRKSRC}
|
||||
.endfor
|
||||
${UNZIP_NATIVE_CMD} ${_DISTDIR}/libf2c.zip -q -d ${WRKSRC}/libf2c
|
||||
(cd ${WRKSRC} && ${TAR} xfz ${_DISTDIR}/src.tgz)
|
||||
|
||||
pre-patch:
|
||||
${CP} -p ${WRKSRC}/libf2c/makefile.u ${WRKSRC}/libf2c/Makefile
|
||||
@ -53,9 +57,9 @@ pre-configure:
|
||||
|
||||
do-build:
|
||||
@${ECHO_MSG} "===> Building f2c..."
|
||||
@(cd ${WRKSRC}/src && ${DO_MAKE_BUILD} ${ALL_TARGET})
|
||||
(cd ${WRKSRC}/src && ${DO_MAKE_BUILD} ${ALL_TARGET})
|
||||
@${ECHO_MSG} "===> Building libf2c..."
|
||||
@(cd ${WRKSRC}/libf2c && ${DO_MAKE_BUILD} ${ALL_TARGET} libf2c.so)
|
||||
(cd ${WRKSRC}/libf2c && ${DO_MAKE_BUILD} ${ALL_TARGET} libf2c.so)
|
||||
${MV} ${WRKSRC}/libf2c/libf2c.so ${WRKSRC}/libf2c/libf2c.so.${LIBVER}
|
||||
|
||||
do-install:
|
||||
@ -67,6 +71,7 @@ do-install:
|
||||
${LN} -sf libf2c.so.${LIBVER} ${STAGEDIR}${PREFIX}/lib/libf2c.so
|
||||
|
||||
do-install-DOCS-on:
|
||||
${CP} ${WRKSRC}/libf2c/README ${WRKSRC}/README_libf2c
|
||||
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
|
||||
|
||||
|
@ -1,2 +1,21 @@
|
||||
SHA256 (f2c-20060810/f2c.tar) = 0ce78544ddfcdac24b3ffc4cf8696f3b1b49390198e2d85fec3ce3a78545a948
|
||||
SIZE (f2c-20060810/f2c.tar) = 1201152
|
||||
TIMESTAMP = 1607198735
|
||||
SHA256 (f2c-20200916/changes) = 5b7993437e1281f860a81de86875b1cf36e2eae75f6330b666e38ce3273a7814
|
||||
SIZE (f2c-20200916/changes) = 135491
|
||||
SHA256 (f2c-20200916/f2c.1) = f66eb9fb49984799c5fe7fc7651da2712d4ef40d505a337625216dac0e032dfb
|
||||
SIZE (f2c-20200916/f2c.1) = 7532
|
||||
SHA256 (f2c-20200916/f2c.1t) = d37a61295b245906a81d262a667f2a4491f5bd9243b07d46a6fb2e1689e8e8e5
|
||||
SIZE (f2c-20200916/f2c.1t) = 7574
|
||||
SHA256 (f2c-20200916/f2c.h) = 7d323c009951dbd40201124b9302cb21daab2d98bed3d4a56b51b48958bc76ef
|
||||
SIZE (f2c-20200916/f2c.h) = 4688
|
||||
SHA256 (f2c-20200916/f2c.pdf) = 816cdbfd20ce3695be0eb976648714b6fe496785bb8026c6b8911712764d57c7
|
||||
SIZE (f2c-20200916/f2c.pdf) = 73606
|
||||
SHA256 (f2c-20200916/fc) = f0dced9b581a5808bd2d0d5e4716997043960a56333d5f4c44b201b870aa0ea8
|
||||
SIZE (f2c-20200916/fc) = 7751
|
||||
SHA256 (f2c-20200916/getopt.c) = e71a770ef56f5a340a2fe114e202de51d58a1ebca0e39d26b3e17f9808af6ebb
|
||||
SIZE (f2c-20200916/getopt.c) = 2586
|
||||
SHA256 (f2c-20200916/libf2c.zip) = f13c01421e9668dc86c78159d87c2f802dd1f8e62037834285c7ab77200d97d5
|
||||
SIZE (f2c-20200916/libf2c.zip) = 128845
|
||||
SHA256 (f2c-20200916/src.tgz) = d4847456aa91c74e5e61e2097780ca6ac3b20869fae8864bfa8dcc66f6721d35
|
||||
SIZE (f2c-20200916/src.tgz) = 284025
|
||||
SHA256 (f2c-20200916/README) = 0d9a1fdcb9b6bbcd4877f24429db93f55cb08ab7469ebbc81afb21df4eba5d51
|
||||
SIZE (f2c-20200916/README) = 7973
|
||||
|
@ -1,9 +1,8 @@
|
||||
diff -ruN f2c.orig/files/patch-libf2c+lwrite.c f2c/files/patch-libf2c+lwrite.c
|
||||
--- f2c.orig/files/patch-libf2c+lwrite.c 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ f2c/files/patch-libf2c+lwrite.c 2008-07-29 14:05:35.000000000 -0500
|
||||
--- f2c/files/patch-libf2c+lwrite.c.orig 2020-12-05 22:19:12 UTC
|
||||
+++ f2c/files/patch-libf2c+lwrite.c
|
||||
@@ -0,0 +1,24 @@
|
||||
+--- libf2c/lwrite.c.orig 2008-07-29 13:57:49.000000000 -0500
|
||||
++++ libf2c/lwrite.c 2008-07-29 14:02:33.000000000 -0500
|
||||
++++ libf2c/lwrite.c
|
||||
+@@ -107,10 +107,10 @@
|
||||
+ absn = -absn;
|
||||
+ fmt = LLOW <= absn && absn < LHIGH ? LFFMT : LEFMT;
|
||||
@ -26,12 +25,11 @@ diff -ruN f2c.orig/files/patch-libf2c+lwrite.c f2c/files/patch-libf2c+lwrite.c
|
||||
+ switch(*b) {
|
||||
+ #ifndef WANT_LEAD_0
|
||||
+ case '0':
|
||||
diff -ruN f2c.orig/files/patch-libf2c+open.c f2c/files/patch-libf2c+open.c
|
||||
--- f2c.orig/files/patch-libf2c+open.c 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ f2c/files/patch-libf2c+open.c 2008-07-29 14:08:51.000000000 -0500
|
||||
--- f2c/files/patch-libf2c+open.c.orig 2020-12-05 22:19:12 UTC
|
||||
+++ f2c/files/patch-libf2c+open.c
|
||||
@@ -0,0 +1,29 @@
|
||||
+--- libf2c/open.c.orig 2008-07-29 13:58:04.000000000 -0500
|
||||
++++ libf2c/open.c 2008-07-29 14:08:30.000000000 -0500
|
||||
++++ libf2c/open.c
|
||||
+@@ -12,7 +12,7 @@
|
||||
+ #ifdef KR_headers
|
||||
+ extern char *malloc();
|
||||
@ -59,12 +57,11 @@ diff -ruN f2c.orig/files/patch-libf2c+open.c f2c/files/patch-libf2c+open.c
|
||||
+ goto replace;
|
||||
+ #else
|
||||
+ if (!(b->ufd = tmpfile()))
|
||||
diff -ruN f2c.orig/files/patch-libf2c+rawio.h f2c/files/patch-libf2c+rawio.h
|
||||
--- f2c.orig/files/patch-libf2c+rawio.h 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ f2c/files/patch-libf2c+rawio.h 2008-07-29 14:09:17.000000000 -0500
|
||||
--- f2c/files/patch-libf2c+rawio.h.orig 2020-12-05 22:19:12 UTC
|
||||
+++ f2c/files/patch-libf2c+rawio.h
|
||||
@@ -0,0 +1,11 @@
|
||||
+--- libf2c/rawio.h.orig 2008-07-29 14:07:02.000000000 -0500
|
||||
++++ libf2c/rawio.h 2008-07-29 14:08:08.000000000 -0500
|
||||
++++ libf2c/rawio.h
|
||||
+@@ -26,7 +26,7 @@
|
||||
+ #endif
|
||||
+ #endif /*KR_HEADERS*/
|
||||
|
@ -1,23 +1,23 @@
|
||||
taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
|
||||
--- src/xsum0.out Mon Jan 15 16:39:12 2007
|
||||
+++ src/xsum0.out Mon Jan 15 16:39:45 2007
|
||||
--- src/xsum0.out.orig 2020-09-16 22:54:09.000000000 +0000
|
||||
+++ src/xsum0.out 2020-12-06 12:12:56.822181000 +0000
|
||||
@@ -10,7 +10,7 @@
|
||||
expr.c 6bfe005 72276
|
||||
f2c.1 b0441b2 7532
|
||||
f2c.1t bf1f87 7574
|
||||
-f2c.h e770b7d8 4688
|
||||
+f2c.h 119ccae4 5589
|
||||
format.c bc32336 59652
|
||||
format.c f00da069 59974
|
||||
format.h b396862 458
|
||||
formatdata.c 11a95834 28870
|
||||
formatdata.c 1f0f56eb 28988
|
||||
|
||||
--- libf2c/f2c.h0.orig Tue Sep 7 13:46:24 1999
|
||||
+++ libf2c/f2c.h0 Mon Jan 15 16:39:12 2007
|
||||
@@ -1,4 +1,13 @@
|
||||
--- libf2c/f2c.h0.orig 1999-09-07 17:46:24 UTC
|
||||
+++ libf2c/f2c.h0
|
||||
@@ -1,5 +1,14 @@
|
||||
-/* f2c.h -- Standard Fortran to C header file */
|
||||
+/* g2c.h -- g77 version of f2c (Standard Fortran to C header file) */
|
||||
+
|
||||
|
||||
+/* This file is generated by the g77 libg2c configuration process from a
|
||||
+ file named g2c.hin. This process sets up the appropriate types,
|
||||
+ defines the appropriate macros, and so on. The resulting g2c.h file
|
||||
@ -26,9 +26,10 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
+ object file(s) with those produced by the same version of g77 that
|
||||
+ produced this file, allowing inter-operability of f2c-compiled and
|
||||
+ g77-compiled code. */
|
||||
|
||||
+
|
||||
/** barf [ba:rf] 2. "He suggested using FORTRAN, and everybody barfed."
|
||||
|
||||
- From The Shogakukan DICTIONARY OF NEW ENGLISH (Second edition) */
|
||||
@@ -7,24 +16,24 @@
|
||||
#ifndef F2C_INCLUDE
|
||||
#define F2C_INCLUDE
|
||||
@ -61,7 +62,7 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
|
||||
#define TRUE_ (1)
|
||||
#define FALSE_ (0)
|
||||
@@ -37,14 +46,15 @@
|
||||
@@ -37,14 +46,15 @@ typedef unsigned long long ulongint; /* system-depende
|
||||
/* I/O stuff */
|
||||
|
||||
#ifdef f2c_i2
|
||||
@ -80,7 +81,7 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
#endif
|
||||
|
||||
/*external read, write*/
|
||||
@@ -201,6 +211,9 @@
|
||||
@@ -201,6 +211,9 @@ typedef doublereal E_f; /* real function with -R not s
|
||||
/* undef any lower-case symbols that your C compiler predefines, e.g.: */
|
||||
|
||||
#ifndef Skip_f2c_Undefs
|
||||
@ -90,13 +91,12 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
#undef cray
|
||||
#undef gcos
|
||||
#undef mc68010
|
||||
|
||||
--- src/f2c.h.orig Mon Jan 15 16:39:12 2007
|
||||
+++ src/f2c.h Mon Jan 15 16:39:12 2007
|
||||
@@ -1,4 +1,13 @@
|
||||
--- src/f2c.h.orig 1999-09-07 17:46:24 UTC
|
||||
+++ src/f2c.h
|
||||
@@ -1,5 +1,14 @@
|
||||
-/* f2c.h -- Standard Fortran to C header file */
|
||||
+/* g2c.h -- g77 version of f2c (Standard Fortran to C header file) */
|
||||
+
|
||||
|
||||
+/* This file is generated by the g77 libg2c configuration process from a
|
||||
+ file named g2c.hin. This process sets up the appropriate types,
|
||||
+ defines the appropriate macros, and so on. The resulting g2c.h file
|
||||
@ -105,9 +105,10 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
+ object file(s) with those produced by the same version of g77 that
|
||||
+ produced this file, allowing inter-operability of f2c-compiled and
|
||||
+ g77-compiled code. */
|
||||
|
||||
+
|
||||
/** barf [ba:rf] 2. "He suggested using FORTRAN, and everybody barfed."
|
||||
|
||||
- From The Shogakukan DICTIONARY OF NEW ENGLISH (Second edition) */
|
||||
@@ -7,24 +16,24 @@
|
||||
#ifndef F2C_INCLUDE
|
||||
#define F2C_INCLUDE
|
||||
@ -140,7 +141,7 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
|
||||
#define TRUE_ (1)
|
||||
#define FALSE_ (0)
|
||||
@@ -37,14 +46,15 @@
|
||||
@@ -37,14 +46,15 @@ typedef unsigned long long ulongint; /* system-depende
|
||||
/* I/O stuff */
|
||||
|
||||
#ifdef f2c_i2
|
||||
@ -159,7 +160,7 @@ taken from /usr/src/gnu/lib/libg2c/g2c.h of FreeBSD 6.2-RELEASE
|
||||
#endif
|
||||
|
||||
/*external read, write*/
|
||||
@@ -201,6 +211,9 @@
|
||||
@@ -201,6 +211,9 @@ typedef doublereal E_f; /* real function with -R not s
|
||||
/* undef any lower-case symbols that your C compiler predefines, e.g.: */
|
||||
|
||||
#ifndef Skip_f2c_Undefs
|
||||
|
@ -1,5 +1,5 @@
|
||||
--- libf2c/MAIN.c.orig Sun Jul 30 15:06:49 2006
|
||||
+++ libf2c/MAIN.c Sun Jul 30 15:12:02 2006
|
||||
--- libf2c/MAIN.c.orig 2020-12-05 22:19:12 UTC
|
||||
+++ libf2c/MAIN.c
|
||||
@@ -0,0 +1,18 @@
|
||||
+/*
|
||||
+ Add a pseudo entry point for cases where the main FOTRAN program is missing
|
||||
|
@ -1,5 +1,5 @@
|
||||
--- libf2c/Makefile.orig Fri Jun 6 15:09:42 2003
|
||||
+++ libf2c/Makefile Sun Jul 30 11:48:17 2006
|
||||
--- libf2c/Makefile.orig 2008-11-27 06:20:03 UTC
|
||||
+++ libf2c/Makefile
|
||||
@@ -13,9 +13,9 @@
|
||||
# to the CFLAGS = line below.
|
||||
|
||||
@ -12,25 +12,25 @@
|
||||
|
||||
# compile, then strip unnecessary symbols
|
||||
.c.o:
|
||||
@@ -29,7 +29,7 @@
|
||||
@@ -29,7 +29,7 @@ CFLAGS = -O
|
||||
|
||||
MISC = f77vers.o i77vers.o main.o s_rnge.o abort_.o exit_.o getarg_.o iargc_.o\
|
||||
getenv_.o signal_.o s_stop.o s_paus.o system_.o cabs.o\
|
||||
getenv_.o signal_.o s_stop.o s_paus.o system_.o cabs.o ctype.o\
|
||||
- derf_.o derfc_.o erf_.o erfc_.o sig_die.o uninit.o
|
||||
+ derf_.o derfc_.o erf_.o erfc_.o sig_die.o uninit.o MAIN.o
|
||||
POW = pow_ci.o pow_dd.o pow_di.o pow_hh.o pow_ii.o pow_ri.o pow_zi.o pow_zz.o
|
||||
CX = c_abs.o c_cos.o c_div.o c_exp.o c_log.o c_sin.o c_sqrt.o
|
||||
DCX = z_abs.o z_cos.o z_div.o z_exp.o z_log.o z_sin.o z_sqrt.o
|
||||
@@ -82,7 +82,7 @@
|
||||
## of "cc -shared".
|
||||
@@ -86,7 +86,7 @@ libf2c.a: $(OFILES)
|
||||
## arrange for $DYLD_LIBRARY_PATH to include the directory containing libf2c.so.
|
||||
|
||||
libf2c.so: $(OFILES)
|
||||
- cc -shared -o libf2c.so $(OFILES)
|
||||
- $(CC) -shared -o libf2c.so $(OFILES)
|
||||
+ $(CC) -shared -Wl,-soname,libf2c.so.%%LIBVER%% -o libf2c.so $(OFILES)
|
||||
|
||||
### If your system lacks ranlib, you don't need it; see README.
|
||||
|
||||
@@ -110,12 +110,15 @@
|
||||
@@ -114,12 +114,15 @@ sysdep1.h: sysdep1.h0
|
||||
# If your system lacks onexit() and you are not using an
|
||||
# ANSI C compiler, then you should uncomment the following
|
||||
# two lines (for compiling main.o):
|
||||
@ -40,8 +40,10 @@
|
||||
+ $(CC) -c $(CFLAGS) -DNO_ONEXIT -DSkip_f2c_Undefs main.c
|
||||
# On at least some Sun systems, it is more appropriate to
|
||||
# uncomment the following two lines:
|
||||
#main.o: main.c
|
||||
# $(CC) -c -Donexit=on_exit -DSkip_f2c_Undefs main.c
|
||||
-#main.o: main.c
|
||||
-# $(CC) -c -Donexit=on_exit -DSkip_f2c_Undefs main.c
|
||||
+main.o: main.c
|
||||
+ $(CC) -c $(CFLAGS) -Donexit=on_exit -DSkip_f2c_Undefs main.c
|
||||
+
|
||||
+MAIN.o: MAIN.c
|
||||
+ $(CC) -c $(CFLAGS) -DSkip_f2c_Undefs MAIN.c
|
||||
|
Loading…
Reference in New Issue
Block a user