Package: spherepack / 3.3~a1-4

reproduciblity.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Author: Alastair McKinstry <mckinstry@debian.org>
Description: Bit-reproducibility changes
Forwarded: not-needed
Last-Updated: 2020-03-25

Index: spherepack-3.3~a1/Src/Makefile
===================================================================
--- spherepack-3.3~a1.orig/Src/Makefile
+++ spherepack-3.3~a1/Src/Makefile
@@ -1,32 +1,31 @@
 FC:=f95
 PREFIX:=/usr/local
+LIBDIR=/usr/local/lib
 LD:=$(LD)
 SONAME=libsphere-$(FC).so.0d
 SHLIBFLAGS:=  -Wl,--soname,$(SONAME) -Wl,--version-script,spherepack.ver -lm
-PIC_OBJS = $(patsubst %.f,%.pic_o, $(wildcard *.f90))
+PIC_OBJS = $(patsubst %.f90,%.pic_o, $(wildcard *.f90))
 
 all: libsphere.a shlib libsphere.so
 
 libsphere.a:    *.f90
-	gfortran -c *.f90
+	$(FC) -fPIC -fdefault-real-8 -fdefault-double-8 -c `LC_ALL=C ls *.f90`
 	ld -r -o libsphere.a *.o
 
-shlib $(SONAME):
-	$(FC) $(LDFLAGS) -Wl,--as-needed -shared -o $(SONAME) $(SHLIBFLAGS) $(PIC_OBJS) -lc
+shlib $(SONAME): $(PIC_OBJS)
+	$(FC) $(LDFLAGS) -Wl,--as-needed -shared -o $(SONAME) $(SHLIBFLAGS) `LC_ALL=C ls $(PIC_OBJS)` -lc
+	ln -sf $(SONAME) libsphere.so
 
 clean:
 	rm -f *.o *.pic_o libsphere.a $(SONAME)	 libsphere.so
 
 install:
-	   mkdir -p $(DESTDIR)$(PREFIX)/lib
-	   # cp libsphere.a $(DESTDIR)$(PREFIX)/lib
-	   cp $(SONAME)  $(DESTDIR)$(PREFIX)/lib
-	   ln -sf $(SONAME) $(DESTDIR)$(PREFIX)/lib/libsphere.so
-	mkdir -p $(DESTDIR)$(LIBDIR)
-	mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
-	cp libsphere.a $(DESTDIR)$(LIBDIR)
+	mkdir -p $(DESTDIR)$(LIBDIR)/fortran/$(FC)
+	cp libsphere.a $(DESTDIR)$(LIBDIR)/fortran/$(FC)
 	cp $(SONAME)  $(DESTDIR)$(LIBDIR)
-	ln -sf $(SONAME) $(DESTDIR)$(LIDBIR)/libsphere.so
+	mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
+	ln -sf $(SONAME) $(DESTDIR)$(LIBDIR)/libsphere-$(FC).so
+	ln -sf ../../$(SONAME) $(DESTDIR)$(LIBDIR)/fortran/$(FC)/libsphere.so
 	sed -e 's;@prefix@;${PREFIX};' -e 's;@PACKAGE_VERSION@;${PACKAGE_VERSION};' -e 's;@LIBDIR@;${LIBDIR};'  \
 		   < sphere.pc.in > $(DESTDIR)$(LIBDIR)/pkgconfig/sphere.pc