Make the AIX case of Makefile.shlib safe for parallel make.

Use our typical approach, from src/backend/parser.  Back-patch to 9.1
(all supported versions).
This commit is contained in:
Noah Misch 2016-07-23 20:30:03 -04:00
parent 6d85bb1ba7
commit e8564ef034
1 changed files with 10 additions and 1 deletions

View File

@ -338,7 +338,16 @@ endif
else # PORTNAME == aix
# AIX case
$(shlib) $(stlib): $(OBJS) | $(SHLIB_PREREQS)
# There is no correct way to write a rule that generates two files.
# Rules with two targets don't have that meaning, they are merely
# shorthand for two otherwise separate rules. To be safe for parallel
# make, we must chain the dependencies like this. The semicolon is
# important, otherwise make will choose some built-in rule.
$(stlib): $(shlib) ;
$(shlib): $(OBJS) | $(SHLIB_PREREQS)
rm -f $(stlib)
$(LINK.static) $(stlib) $^
$(RANLIB) $(stlib)