summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSteve Huston <shuston@riverace.com>1999-03-16 01:18:04 +0000
committerSteve Huston <shuston@riverace.com>1999-03-16 01:18:04 +0000
commit6218db0eb8154fa377b5327d0bfc5330de13b5c6 (patch)
treed8334c64e5023df5430c1114e29e01e8c400c8a6 /include
parent0c55e40f2e6fa22a802cbfe286ce2780aed24d63 (diff)
downloadATCD-6218db0eb8154fa377b5327d0bfc5330de13b5c6.tar.gz
New template instantiation method for AIX xlC.
Diffstat (limited to 'include')
-rw-r--r--include/makeinclude/rules.lib.GNU43
1 files changed, 7 insertions, 36 deletions
diff --git a/include/makeinclude/rules.lib.GNU b/include/makeinclude/rules.lib.GNU
index 73af29f84fe..9b7c8acf337 100644
--- a/include/makeinclude/rules.lib.GNU
+++ b/include/makeinclude/rules.lib.GNU
@@ -82,43 +82,14 @@ ifdef PRELIB
endif
$(AR) $(ARFLAGS) $@ $?
ifdef TEMPINCDIR
-# This is required for AIX!!!
- if test -e xxx; \
- then \
- rm xxx; \
+# This is required to get AIX xlC to instantiate and compile the needed
+# templates.
+ if test -s ./$(TEMPINCDIR)/*.C; \
+ then \
+ $(LINK.cc) -o dummy $(LDFLAGS) $(ACE_ROOT)/etc/xlc_dummy.cpp $@ $(LIBS); \
+ $(RM) dummy; \
+ $(AR) $(ARFLAGS) $@ tempinc/*.o; \
fi
- (if test -s ./$(TEMPINCDIR)/*.C; \
- then \
- while ! test -e xxx; \
- do \
- touch xxx; \
- cd ./$(TEMPINCDIR); \
- for temp in *.C; \
- do \
- if ! test -d ./$(TEMPINCDIR); \
- then \
- cd ..; \
- fi; \
- if $(COMPILE.cc) -o $(VDIR)$$temp.o ./$(TEMPINCDIR)/$$temp; \
- then \
- $(AR) $(ARFLAGS) $@ $(VDIR)$$temp.o;\
- else \
- rm $@; \
- rm xxx; \
- exit; \
- fi \
- done; \
- for temp in ./$(TEMPINCDIR)/*.C; \
- do \
- if test $$temp -nt xxx; \
- then \
- rm xxx; \
- break; \
- fi \
- done \
- done; \
- fi)
- rm xxx
endif
-chmod a+r $@
-$(RANLIB) $@