From 1e4f4acc5bdf13f4cd3b30c686a90aecd2895830 Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Mon, 17 Sep 2012 19:33:02 +0400 Subject: Separate proto dirs for 32 and 64 --- rules/common.mk | 6 +++--- rules/ips.mk | 17 +++++++++++------ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/rules/common.mk b/rules/common.mk index 9d283f9..dec0022 100644 --- a/rules/common.mk +++ b/rules/common.mk @@ -37,8 +37,8 @@ mach64 := amd64 workdir := $(CURDIR)/work sourcedir := $(workdir)/source -destdir.32 := $(workdir)/proto -destdir.64 := $(workdir)/proto +destdir.32 := $(workdir)/proto/32 +destdir.64 := $(workdir)/proto/64 builddir.32 := $(workdir)/build/32 builddir.64 := $(workdir)/build/64 @@ -64,7 +64,7 @@ includedir.32 = /usr/include includedir.64 = /usr/include PKG_CONFIG_PATH.32 = /usr/gnu/lib/$(mach32)/pkg-config:/usr/lib/$(mach32)/pkg-config -PKG_CONFIG_PATH.64 = /usr/gnu/lib/$(mach64)/pkg-config:/usr/lib/$(mach.64)/pkg-config +PKG_CONFIG_PATH.64 = /usr/gnu/lib/$(mach64)/pkg-config:/usr/lib/$(mach64)/pkg-config export PKG_CONFIG_PATH = PKG_CONFIG_PATH.$(bits) # $(bits) are target-specific and defined in 32.mk or 64.mk diff --git a/rules/ips.mk b/rules/ips.mk index 184d517..94d8316 100644 --- a/rules/ips.mk +++ b/rules/ips.mk @@ -54,10 +54,9 @@ pkg-define += \ # Where to find files: -pkg-protos = \ --d "$(destdir)" \ --d "$(sourcedir)" \ --d . \ +pkg-protos = -d "$(destdir.32)" +pkg-protos += -d "$(destdir.64)" +pkg-protos += -d "$(sourcedir)" -d . transformations := \ $(transdir)/defaults \ @@ -91,8 +90,14 @@ mogrify-stamp: $(mogrified-manifests) touch $@ +# pkgdepend is unhappy if some proto dirs do not exist: +protodirs-stamp: + [ -d "$(destdir.32)" ] || mkdir -p "$(destdir.32)" + [ -d "$(destdir.64)" ] || mkdir -p "$(destdir.64)" + touch $@ + depend-manifests := $(manifests:%=$(manifestdir)/depend-%) -$(manifestdir)/depend-% : $(manifestdir)/mogrified-% +$(manifestdir)/depend-% : $(manifestdir)/mogrified-% protodirs-stamp pkgdepend generate -m $(pkg-protos) $< > $@ || (rm -f $@; false) depend-stamp: $(depend-manifests) touch $@ @@ -109,7 +114,7 @@ resolve-stamp: $(resolved-manifests) # For convenience - make all, before publishing pre-publish: resolve-stamp -publish-stamp: pre-publish +publish-stamp: pre-publish protodirs-stamp @if [ -n "$(ips-repo)" ]; then \ set -x; \ pkgsend -s $(ips-repo) publish --fmri-in-manifest \ -- cgit v1.2.3