libgo: add FAT library support for static libraries on AIX
authorClément Chigot <clement.chigot@atos.net>
Wed, 26 Aug 2020 08:08:48 +0000 (10:08 +0200)
committerIan Lance Taylor <iant@golang.org>
Wed, 26 Aug 2020 23:18:06 +0000 (16:18 -0700)
Like shared libraries, AIX static libraries must also have both 32 and
64 bit objects.

Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/250777

gcc/go/gofrontend/MERGE
libgo/Makefile.am
libgo/Makefile.in

index e425f15285eaa4a83786412270f51924d68ec582..2f0865b7c80ae7a5d6b3e08551c81a4164afbe4f 100644 (file)
@@ -1,4 +1,4 @@
-823c91088bc6ac606362fc34b2880ce0de1624ad
+aac2b382839154d74eeef160522c0a5c1ea8aadf
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
index 1112ee27df60a7824cd609bf0d3e8ca93a6fbe23..9ce0cab9d6adf7903db383d6a9f0e57c2516292f 100644 (file)
@@ -1255,4 +1255,8 @@ add-aix-fat-library: all-multi
          arx=`echo $(AR) | sed -e 's/-X[^ ]*//g'`; \
          $${arx} -X$(AIX_EXTRA_ARCH) rc .libs/$(PACKAGE).a ../ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/.libs/$(PACKAGE).so.$(MAJOR); \
          $${arx} -X$(AIX_EXTRA_ARCH) rc ../pthread/$(PACKAGE)/.libs/$(PACKAGE).a ../pthread/ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/.libs/$(PACKAGE).so.$(MAJOR); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc libgobegin.a ../ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgobegin_a_OBJECTS); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc ../pthread/$(PACKAGE)/libgobegin.a ../pthread/ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgobegin_a_OBJECTS); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc libgolibbegin.a ../ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgolibbegin_a_OBJECTS); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc ../pthread/$(PACKAGE)/libgolibbegin.a ../pthread/ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgolibbegin_a_OBJECTS); \
        fi
index 1fb8da6f552b8ff3cb1e0b4ddb850eb6092fcda6..b5770831556593f632c38c16479799ad8ef841c6 100644 (file)
@@ -3129,6 +3129,10 @@ add-aix-fat-library: all-multi
          arx=`echo $(AR) | sed -e 's/-X[^ ]*//g'`; \
          $${arx} -X$(AIX_EXTRA_ARCH) rc .libs/$(PACKAGE).a ../ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/.libs/$(PACKAGE).so.$(MAJOR); \
          $${arx} -X$(AIX_EXTRA_ARCH) rc ../pthread/$(PACKAGE)/.libs/$(PACKAGE).a ../pthread/ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/.libs/$(PACKAGE).so.$(MAJOR); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc libgobegin.a ../ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgobegin_a_OBJECTS); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc ../pthread/$(PACKAGE)/libgobegin.a ../pthread/ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgobegin_a_OBJECTS); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc libgolibbegin.a ../ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgolibbegin_a_OBJECTS); \
+         $${arx} -X$(AIX_EXTRA_ARCH) rc ../pthread/$(PACKAGE)/libgolibbegin.a ../pthread/ppc$(AIX_EXTRA_ARCH)/$(PACKAGE)/$(libgolibbegin_a_OBJECTS); \
        fi
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.