Группа :: Работа с файлами
Пакет: pnetcdf
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: pnetcdf-1.8.1-alt-build.patch
Скачать
Скачать
diff --git a/parallel-netcdf/macros.make.in b/parallel-netcdf/macros.make.in
index dbbf188..658ea3d 100644
--- a/parallel-netcdf/macros.make.in
+++ b/parallel-netcdf/macros.make.in
@@ -25,12 +25,12 @@ LIBRARY = @BUILDDIR@/src/lib/libpnetcdf.a
ifdef DESTDIR
INCDIR = $(DESTDIR)/$(prefix)/include
-LIBDIR = $(DESTDIR)/$(prefix)/lib
+LIBDIR = $(DESTDIR)/$(prefix)/lib${LIB_SUFFIX}
BINDIR = $(DESTDIR)/$(prefix)/bin
MANDIR = $(DESTDIR)/$(prefix)/share/man
else
INCDIR = $(prefix)/include
-LIBDIR = $(prefix)/lib
+LIBDIR = $(prefix)/lib${LIB_SUFFIX}
BINDIR = $(prefix)/bin
MANDIR = $(prefix)/share/man
endif
diff --git a/parallel-netcdf/pnetcdf_pc.in b/parallel-netcdf/pnetcdf_pc.in
index 697df49..8131881 100644
--- a/parallel-netcdf/pnetcdf_pc.in
+++ b/parallel-netcdf/pnetcdf_pc.in
@@ -35,7 +35,7 @@
prefix=INSTALL_PREFIX # prefix can be changed by "make install prefix=/path"
exec_prefix=@exec_prefix@
-libdir=${exec_prefix}/lib
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
includedir=${prefix}/include
Name: Parallel-NetCDF
diff --git a/parallel-netcdf/src/lib/Makefile.in b/parallel-netcdf/src/lib/Makefile.in
index b1fb33e..2666219 100644
--- a/parallel-netcdf/src/lib/Makefile.in
+++ b/parallel-netcdf/src/lib/Makefile.in
@@ -21,6 +21,7 @@ include ../../macros.make
INCLUDES = -I. -I$(srcdir)
LIBRARY = libpnetcdf.a
+SHLIB = libpnetcdf.so
HEADER = pnetcdf.h
ifeq (@enable_erange_fill@, yes)
@@ -91,7 +92,7 @@ GARBAGE = $(LIBRARY) $(M4_SRCS:.m4=.c) ncx.h
DIST_GARBAGE = ncconfig.h pnetcdf.h
-all: $(LIBRARY)
+all: $(LIBRARY) $(SHLIB)
objs: $(LIB_OBJS)
@@ -103,9 +104,10 @@ $(LIBRARY): $(LIB_OBJS)
$(AR) $(ARFLAGS) $(LIBRARY) $(LIB_OBJS)
$(RANLIB) $(LIBRARY)
-install: $(LIBRARY)
+install: $(LIBRARY) $(SHLIB)
$(INSTALL) -d -m 755 $(LIBDIR)
$(INSTALL_DATA) $(LIBRARY) $(LIBDIR)/$(LIBRARY)
+ cp -P *.so* $(LIBDIR)/
$(INSTALL) -d -m 755 $(INCDIR)
$(INSTALL_DATA) $(HEADER) $(INCDIR)/$(HEADER)
@@ -130,4 +132,10 @@ lint: llib-lpnetcdf.ln
ncx.h: ncx_h.m4
$(M4) $(M4FLAGS) $< >$@
+$(SHLIB): $(LIBRARY)
+ mpic++ -shared -Wl,--whole-archive $(LIBRARY) -Wl,--no-whole-archive \
+ -Wl,-soname,$(SHLIB).${SOVER} -o $(SHLIB).${SOVER} -lgfortran
+ rm -f $(SHLIB)
+ ln -s $(SHLIB).${SOVER} $(SHLIB)
+
include $(srcdir)/depend
diff --git a/parallel-netcdf/src/utils/ncmpidiff/Makefile.in b/parallel-netcdf/src/utils/ncmpidiff/Makefile.in
index 6421e85..2b1069c 100644
--- a/parallel-netcdf/src/utils/ncmpidiff/Makefile.in
+++ b/parallel-netcdf/src/utils/ncmpidiff/Makefile.in
@@ -17,7 +17,7 @@ include ../../../macros.make
INCLUDES = -I../../lib
LDFLAGS += -L../../lib
-LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@
+LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@ -lgfortran
C_SOURCES = ncmpidiff.c
HEADERS =
diff --git a/parallel-netcdf/src/utils/ncmpidump/Makefile.in b/parallel-netcdf/src/utils/ncmpidump/Makefile.in
index e12a37d..74f3aa0 100644
--- a/parallel-netcdf/src/utils/ncmpidump/Makefile.in
+++ b/parallel-netcdf/src/utils/ncmpidump/Makefile.in
@@ -19,7 +19,7 @@ NCGEN = ../ncmpigen/ncmpigen
INCLUDES = -I../../lib
LDFLAGS += -L../../lib
-LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@
+LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@ -lgfortran
C_SOURCES = ncmpidump.c vardata.c dumplib.c
HEADERS = ncmpidump.h vardata.h dumplib.h
diff --git a/parallel-netcdf/src/utils/ncmpigen/Makefile.in b/parallel-netcdf/src/utils/ncmpigen/Makefile.in
index fdd4e2b..fc76360 100644
--- a/parallel-netcdf/src/utils/ncmpigen/Makefile.in
+++ b/parallel-netcdf/src/utils/ncmpigen/Makefile.in
@@ -24,7 +24,7 @@ MANUAL = ncmpigen.1
INCLUDES = -I$(srcdir) -I../../lib
LDFLAGS += -L../../lib
-LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@
+LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@ -lgfortran
C_SOURCES = main.c load.c escapes.c getfill.c init.c genlib.c ncmpigentab.c
HEADERS = generic.h genlib.h ncmpigen.h ncmpigentab.h
diff --git a/parallel-netcdf/src/utils/ncmpivalid/Makefile.in b/parallel-netcdf/src/utils/ncmpivalid/Makefile.in
index ac62837..b91475f 100644
--- a/parallel-netcdf/src/utils/ncmpivalid/Makefile.in
+++ b/parallel-netcdf/src/utils/ncmpivalid/Makefile.in
@@ -19,7 +19,7 @@ include ../../../macros.make
INCLUDES = -I../../lib -I$(srcdir)/../../lib
LDFLAGS += -L../../lib
-LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@
+LIBS := -lpnetcdf $(LIBS) @LCOV_LIB@ -lgfortran
C_SOURCES = ncmpivalid.c
HEADERS =