postgres.git / summary / log / commit / refs

commit    b1fa6c0eb9fadc9eada014227a67eadfec936960
Author:   Noah Misch <noah@leadboat.com>
Date:     Sun Jul 24 00:30:03 2016 +0000

    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).


src/Makefile.shlib | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Makefile.shlib b/src/Makefile.shlib index 7b062a93faf..39935d3d7c9 100644 --- a/src/Makefile.shlib +++ b/src/Makefile.shlib @@ -385,7 +385,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) [parent: ba64aed7004a]