File tree Expand file tree Collapse file tree 3 files changed +21
-4
lines changed Expand file tree Collapse file tree 3 files changed +21
-4
lines changed Original file line number Diff line number Diff line change @@ -152,6 +152,9 @@ endif
152152ifeq ($(OSNAME ) , CYGWIN_NT)
153153 @$(MAKE) -C exports dll
154154endif
155+ ifeq ($(OSNAME ) , AIX)
156+ @$(MAKE) -C exports so
157+ endif
155158endif
156159
157160tests : shared
Original file line number Diff line number Diff line change @@ -1707,11 +1707,7 @@ endif
17071707
17081708LIBDLLNAME = $(LIBPREFIX).dll
17091709IMPLIBNAME = lib$(LIBNAMEBASE).dll.a
1710- ifneq ($(OSNAME), AIX)
17111710LIBSONAME = $(LIBNAME:.$(LIBSUFFIX)=.so)
1712- else
1713- LIBSONAME = $(LIBNAME:.$(LIBSUFFIX)=.a)
1714- endif
17151711LIBDYNNAME = $(LIBNAME:.$(LIBSUFFIX)=.dylib)
17161712LIBDEFNAME = $(LIBNAME:.$(LIBSUFFIX)=.def)
17171713LIBEXPNAME = $(LIBNAME:.$(LIBSUFFIX)=.exp)
Original file line number Diff line number Diff line change 7373endif
7474endif
7575
76+ ifeq ($(F_COMPILER )$(OSNAME ) , IBMAIX)
77+ EXTRALIB += -lxlf90
78+ endif
79+
7680ifeq ($(C_COMPILER ) , PGI)
7781EXTRALIB += -pgf90libs
7882endif
@@ -248,6 +252,20 @@ endif
248252
249253ifeq ($(OSNAME ) , AIX)
250254
255+ so : ../$(LIBSONAME ) linktest.c
256+ $(CC ) $(CFLAGS ) $(LDFLAGS ) -w -o linktest linktest.c ../$(LIBSONAME ) $(EXTRALIB ) && echo OK.
257+ rm -f linktest
258+
259+ ../$(LIBSONAME ) : aix.exp
260+ $(CC ) $(CFLAGS ) $(LDFLAGS ) -shared -o ../$(LIBSONAME ) \
261+ -Wl,-bE:aix.exp -Wl,-bbigtoc ../$(LIBNAME ) $(EXTRALIB )
262+
263+ aix.exp :
264+ /usr/bin/nm -X32_64 -PCpgl ../$(LIBNAME ) | /usr/bin/awk ' { if ((($$ 2 == "T") \
265+ || ($$ 2 == " D" ) || ($$ 2 == " B" ) || ($$ 2 == " W" ) || ($$ 2 == " V" ) || ($$ 2 == " Z" )) && (substr($$ 1,1,1) ! = " ." )) \
266+ { if (( $$ 2 == "W") || ($$ 2 == "V") || ($$ 2 == "Z")) { print $$ 1 " weak" } else { print $$ 1 } } }' | \
267+ /usr/bin/sort -u > aix.exp
268+
251269ifeq ($(COMPILER_F77 ) , xlf)
252270
253271goto32.$(SUFFIX ) : ../$(LIBNAME ) aix.def
You can’t perform that action at this time.
0 commit comments