From e48b14ed3b24fa1d9f0aeb0670b79e529638a6b1 Mon Sep 17 00:00:00 2001 From: Michael Stahl Date: Sat, 14 Jan 2012 21:19:41 +0100 Subject: gbuild: UnoApiTarget: just touch the .urd file Apparently the peculiarity that a non-existent file is newer than an existing file is in GNU make 3.82, but not 3.81. --- solenv/gbuild/UnoApiTarget.mk | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'solenv') diff --git a/solenv/gbuild/UnoApiTarget.mk b/solenv/gbuild/UnoApiTarget.mk index 08d34e7c0057..426d967ba706 100644 --- a/solenv/gbuild/UnoApiTarget.mk +++ b/solenv/gbuild/UnoApiTarget.mk @@ -193,11 +193,10 @@ $(call gb_UnoApiTarget_get_clean_target,%) : # rule plus the dependency from the .done target to the .urd file plus the # sort/patsubst call in gb_UnoApiPartTarget__command cause command to be # invoked with the .idl file corresponding to the .urd in that case. -# Yes, this command removes the target. This is because it works. The -# command "true" does not work. Apparently make considers a file that does -# not exist as newer than the target. Which is weird. But there you go. +# Touch the .urd file, so it is newer than the .done file, causing that to +# be rebuilt and overwriting the .urd file again. $(call gb_UnoApiPartTarget_get_target,%.urd) : - @rm -f $@ + mkdir -p $(dir $@) && touch $@ $(call gb_UnoApiPartTarget_get_target,%.done) : $(call gb_UnoApiPartTarget__command,$@,$*,$?) -- cgit