diff options
author | Ivo Hinkelmann <ihi@openoffice.org> | 2011-03-07 15:42:22 +0100 |
---|---|---|
committer | Ivo Hinkelmann <ihi@openoffice.org> | 2011-03-07 15:42:22 +0100 |
commit | f09cd2c5813a8d33eed65a9ce621058cdcb7067d (patch) | |
tree | 5e38d25a94cb8a4c16f982f684398b45d1e2282e /solenv | |
parent | 47f8c3989cdf8ea4f94806c97b12d46228a5c32e (diff) | |
parent | df2e7546e08740a0adc066809084d0cc9f273bf2 (diff) |
CWS-TOOLING: integrate CWS gnumakefixes
Diffstat (limited to 'solenv')
-rwxr-xr-x | solenv/gbuild/platform/linux.mk | 8 | ||||
-rwxr-xr-x | solenv/gbuild/platform/macosx.mk | 7 | ||||
-rwxr-xr-x | solenv/gbuild/platform/solaris.mk | 7 | ||||
-rwxr-xr-x | solenv/gbuild/platform/windows.mk | 19 | ||||
-rw-r--r-- | solenv/gbuild/platform/winmingw.mk | 15 |
5 files changed, 50 insertions, 6 deletions
diff --git a/solenv/gbuild/platform/linux.mk b/solenv/gbuild/platform/linux.mk index 2cbeca889001..757ae52c1b52 100755 --- a/solenv/gbuild/platform/linux.mk +++ b/solenv/gbuild/platform/linux.mk @@ -30,7 +30,7 @@ COM := GCC gb_MKTEMP := mktemp -t gbuild.XXXXXX -gb_CC := cc +gb_CC := gcc gb_CXX := g++ gb_GCCP := gcc gb_AR := ar @@ -153,6 +153,12 @@ gb_COMPILERNOOPTFLAGS := -O0 gb_Helper_abbreviate_dirs_native = $(gb_Helper_abbreviate_dirs) +# convert parametters filesystem root to native notation +# does some real work only on windows, make sure not to +# break the dummy implementations on unx* +define gb_Helper_convert_native +$(1) +endef # CObject class diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk index d6b84dc43e6d..b54cb8fb1b9d 100755 --- a/solenv/gbuild/platform/macosx.mk +++ b/solenv/gbuild/platform/macosx.mk @@ -142,6 +142,13 @@ gb_COMPILERNOOPTFLAGS := -O0 gb_Helper_abbreviate_dirs_native = $(gb_Helper_abbreviate_dirs) +# convert parametters filesystem root to native notation +# does some real work only on windows, make sure not to +# break the dummy implementations on unx* +define gb_Helper_convert_native +$(1) +endef + # CObject class diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk index f953dfbee599..6f29a9745f0d 100755 --- a/solenv/gbuild/platform/solaris.mk +++ b/solenv/gbuild/platform/solaris.mk @@ -126,6 +126,13 @@ gb_COMPILERNOOPTFLAGS := gb_Helper_abbreviate_dirs_native = $(gb_Helper_abbreviate_dirs) +# convert parametters filesystem root to native notation +# does some real work only on windows, make sure not to +# break the dummy implementations on unx* +define gb_Helper_convert_native +$(1) +endef + # CObject class diff --git a/solenv/gbuild/platform/windows.mk b/solenv/gbuild/platform/windows.mk index a4137c077b09..5371ebf9d954 100755 --- a/solenv/gbuild/platform/windows.mk +++ b/solenv/gbuild/platform/windows.mk @@ -30,7 +30,7 @@ COM := MSC # set tmpdir to some mixed case path, suitable for native tools gb_TMPDIR:=$(if $(TMPDIR),$(shell cygpath -m $(TMPDIR)),$(shell cygpath -m /tmp)) -gb_MKTEMP := mktemp --tmpdir=$(gb_TMPDIR) -t gbuild.XXXXXX +gb_MKTEMP := mktemp --tmpdir=$(gb_TMPDIR) gbuild.XXXXXX gb_CC := cl gb_CXX := cl @@ -222,6 +222,17 @@ R=$(gb_Helper_REPODIR_NATIVE) && $(subst $(REPODIR)/,$$R/,$(subst $(gb_Helper_RE $(subst $(REPODIR)/,$$R/,$(subst $(SRCDIR)/,$$S/,$(subst $(OUTDIR)/,$$O/,$(subst $(WORKDIR)/,$$W/,$(subst $(gb_Helper_REPODIR_NATIVE)/,$$R/,$(subst $(gb_Helper_SRCDIR_NATIVE)/,$$S/,$(subst $(gb_Helper_OUTDIR_NATIVE)/,$$O/,$(subst $(gb_Helper_WORKDIR_NATIVE)/,$$W/,$(1))))))))) endef +# convert parametters filesystem root to native notation +# does some real work only on windows, make sure not to +# break the dummy implementations on unx* +define gb_Helper_convert_native +$(patsubst -I$(OUTDIR)%,-I$(gb_Helper_OUTDIR_NATIVE)%, \ +$(patsubst $(OUTDIR)%,$(gb_Helper_OUTDIR_NATIVE)%, \ +$(patsubst $(WORKDIR)%,$(gb_Helper_WORKDIR_NATIVE)%, \ +$(patsubst $(SRCDIR)%,$(gb_Helper_SRCDIR_NATIVE)%, \ +$(1))))) +endef + # CObject class @@ -402,11 +413,11 @@ $(call gb_Output_announce,$(2),$(true),LNK,4) $(call gb_Helper_abbreviate_dirs_native,\ mkdir -p $(dir $(1)) && \ rm -f $(1) && \ - RESPONSEFILE=`$(gb_MKTEMP)` && \ - echo "$(foreach object,$(CXXOBJECTS),$(call gb_CxxObject_get_target,$(object))) \ + RESPONSEFILE=$(call var2file,$(shell $(gb_MKTEMP)),100, \ + $(call gb_Helper_convert_native,$(foreach object,$(CXXOBJECTS),$(call gb_CxxObject_get_target,$(object))) \ $(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \ $(foreach object,$(COBJECTS),$(call gb_CObject_get_target,$(object))) \ - $(PCHOBJS)" > $${RESPONSEFILE} && \ + $(PCHOBJS))) && \ $(gb_LINK) \ $(if $(filter Library CppunitTest,$(TARGETTYPE)),$(gb_Library_TARGETTYPEFLAGS)) \ $(if $(filter StaticLibrary,$(TARGETTYPE)),$(gb_StaticLibrary_TARGETTYPEFLAGS)) \ diff --git a/solenv/gbuild/platform/winmingw.mk b/solenv/gbuild/platform/winmingw.mk index b9eec5eaf417..e03f37a68d2b 100644 --- a/solenv/gbuild/platform/winmingw.mk +++ b/solenv/gbuild/platform/winmingw.mk @@ -28,7 +28,9 @@ GUI := WNT COM := GCC -gb_MKTEMP := mktemp -t gbuild.XXXXXX +# set tmpdir to some mixed case path, suitable for native tools +gb_TMPDIR:=$(if $(TMPDIR),$(shell cygpath -m $(TMPDIR)),$(shell cygpath -m /tmp)) +gb_MKTEMP := mktemp --tmpdir=$(gb_TMPDIR) gbuild.XXXXXX gb_CC := $(CC) gb_CXX := $(CXX) @@ -189,6 +191,17 @@ R=$(gb_Helper_REPODIR_NATIVE) && $(subst $(REPODIR)/,$$R/,$(subst $(gb_Helper_RE $(subst $(REPODIR)/,$$R/,$(subst $(SRCDIR)/,$$S/,$(subst $(OUTDIR)/,$$O/,$(subst $(WORKDIR)/,$$W/,$(subst $(gb_Helper_REPODIR_NATIVE)/,$$R/,$(subst $(gb_Helper_SRCDIR_NATIVE)/,$$S/,$(subst $(gb_Helper_OUTDIR_NATIVE)/,$$O/,$(subst $(gb_Helper_WORKDIR_NATIVE)/,$$W/,$(1))))))))) endef +# convert parametters filesystem root to native notation +# does some real work only on windows, make sure not to +# break the dummy implementations on unx* +define gb_Helper_convert_native +$(patsubst -I$(OUTDIR)%,-I$(gb_Helper_OUTDIR_NATIVE)%, \ +$(patsubst $(OUTDIR)%,$(gb_Helper_OUTDIR_NATIVE)%, \ +$(patsubst $(WORKDIR)%,$(gb_Helper_WORKDIR_NATIVE)%, \ +$(patsubst $(SRCDIR)%,$(gb_Helper_SRCDIR_NATIVE)%, \ +$(1))))) +endef + # CObject class ifeq ($(gb_FULLDEPS),$(true)) |