Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37732162
en ru br
Репозитории ALT

Группа :: Работа с файлами
Пакет: 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		=
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin