Blob Blame History Raw
--- a/libf2c/makefile.u	2009-12-03 18:18:51.000000000 -0800
+++ b/libf2c/makefile.u	2009-12-03 18:17:43.000000000 -0800
@@ -16,12 +16,14 @@
 CC = cc
 SHELL = /bin/sh
 CFLAGS = -O
+SHARED = libf2c.so.@SOVER@

 # compile, then strip unnecessary symbols
 .c.o:
 	$(CC) -c -DSkip_f2c_Undefs $(CFLAGS) $*.c
-	ld -r -x -o $*.xxx $*.o
-	mv $*.xxx $*.o
+%.o : %.c
+	$(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
+
 ## Under Solaris (and other systems that do not understand ld -x),
 ## omit -x in the ld line above.
 ## If your system does not have the ld command, comment out
@@ -69,11 +71,12 @@
 OFILES = $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) \
 	$(HALF) $(CMP) $(EFL) $(CHAR) $(I77) $(TIME)

-all: f2c.h signal1.h sysdep1.h libf2c.a
+all: f2c.h signal1.h sysdep1.h libf2c.a $(SHARED)

 libf2c.a: $(OFILES)
-	ar r libf2c.a $?
-	-ranlib libf2c.a
+	ar r $@ $?
+	-ranlib $@
+

 ## Shared-library variant: the following rule works on Linux
 ## systems.  Details are system-dependent.  Under Linux, -fPIC
@@ -85,8 +88,8 @@
 ## instead of "$(CC) -shared", and when running programs linked against libf2c.so,
 ## arrange for $DYLD_LIBRARY_PATH to include the directory containing libf2c.so.

-libf2c.so: $(OFILES)
-	$(CC) -shared -o libf2c.so $(OFILES)
+$(SHARED): $(OFILES)
+	$(CC) -shared -Wl,-soname,libf2c.so.0 -o $@ $(OFILES) -lm -lc

 ### If your system lacks ranlib, you don't need it; see README.

@@ -126,7 +129,7 @@
 	-ranlib $(LIBDIR)/libf2c.a

 clean:
-	rm -f libf2c.a *.o arith.h signal1.h sysdep1.h
+	rm -f libf2c.a *.o arith.h signal1.h sysdep1.h $(SHARED)

 backspac.o:	fio.h
 close.o:	fio.h
--- a/src/f2c.h	1999-09-07 19:46:24.000000000 +0200
+++ b/src/f2c.h	2011-12-14 00:53:19.503602011 +0100
@@ -7,8 +7,8 @@
 #ifndef F2C_INCLUDE
 #define F2C_INCLUDE

-typedef long int integer;
-typedef unsigned long int uinteger;
+typedef int integer;
+typedef unsigned int uinteger;
 typedef char *address;
 typedef short int shortint;
 typedef float real;