From 5b6dce2681f60a7a5f138a821518c7ec8eb4d326 Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Wed, 10 Dec 2014 17:40:40 -0600 Subject: [PATCH] Fix Windows builds The windows shell doesn't like commands that start ../ Those commands are all found using TOOLS, so by making that an absolute path we fix that problem. However GNUmake doesn't recognize targets with relative paths as being the same as their absolute path, so we have to fix up some places that were using TOOLS in dependencies. --- configure/CONFIG_BASE | 3 ++- src/ca/legacy/gdd/Makefile | 4 ++-- src/ioc/bpt/RULES | 2 +- src/libCom/as/RULES | 4 ++-- src/libCom/flex/RULES | 2 +- 5 files changed, 8 insertions(+), 7 deletions(-) diff --git a/configure/CONFIG_BASE b/configure/CONFIG_BASE index 236f1457a..2d9d77120 100644 --- a/configure/CONFIG_BASE +++ b/configure/CONFIG_BASE @@ -52,8 +52,9 @@ BASE_CPPFLAGS += $(OSITHREAD_DEFAULT_STACK_FLAGS_$(OSITHREAD_USE_DEFAULT_STACK)) #--------------------------------------------------------------- # Where to find the installed build tools +# Windows does not like commands with relative paths starting ../ -TOOLS = $(EPICS_BASE_HOST_BIN) +TOOLS = $(abspath $(EPICS_BASE_HOST_BIN)) #--------------------------------------------------------------- # Epics base build tools and tool flags diff --git a/src/ca/legacy/gdd/Makefile b/src/ca/legacy/gdd/Makefile index 78c69321e..b1e8fceaa 100644 --- a/src/ca/legacy/gdd/Makefile +++ b/src/ca/legacy/gdd/Makefile @@ -79,9 +79,9 @@ dbMapper$(DEP): $(COMMON_DIR)/gddApps.h # Rules for generated files # -$(COMMON_DIR)/aitConvertGenerated.cc: $(TOOLS)/aitGen$(HOSTEXE) +$(COMMON_DIR)/aitConvertGenerated.cc: $(EPICS_BASE_HOST_BIN)/aitGen$(HOSTEXE) $(TOOLS)/aitGen$(HOSTEXE) $@ -$(COMMON_DIR)/gddApps.h : $(TOOLS)/genApps$(HOSTEXE) +$(COMMON_DIR)/gddApps.h : $(EPICS_BASE_HOST_BIN)/genApps$(HOSTEXE) $(TOOLS)/genApps$(HOSTEXE) $@ diff --git a/src/ioc/bpt/RULES b/src/ioc/bpt/RULES index 8b9ffe771..a434eb342 100644 --- a/src/ioc/bpt/RULES +++ b/src/ioc/bpt/RULES @@ -12,5 +12,5 @@ # This is a Makefile fragment, see src/ioc/Makefile. $(patsubst %,$(COMMON_DIR)/%,$(BPT_DBD)) : \ - $(COMMON_DIR)/bpt%.dbd : $(TOOLS)/makeBpt$(HOSTEXE) + $(COMMON_DIR)/bpt%.dbd : $(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE) diff --git a/src/libCom/as/RULES b/src/libCom/as/RULES index 9b6fa1bc5..a2a416f6e 100644 --- a/src/libCom/as/RULES +++ b/src/libCom/as/RULES @@ -16,6 +16,6 @@ asLib$(DEP): asLib_lex.c asLib.c: asLib_lex.c # Ensure that lexer and parser are built before they are needed -asLib.c: $(TOOLS)/antelope$(HOSTEXE) -asLib_lex.c: $(TOOLS)/e_flex$(HOSTEXE) +asLib.c: $(EPICS_BASE_HOST_BIN)/antelope$(HOSTEXE) +asLib_lex.c: $(EPICS_BASE_HOST_BIN)/e_flex$(HOSTEXE) asLib_lex.c: $(INSTALL_INCLUDE)/flex.skel.static diff --git a/src/libCom/flex/RULES b/src/libCom/flex/RULES index b4f4cbaf4..65406f4c5 100644 --- a/src/libCom/flex/RULES +++ b/src/libCom/flex/RULES @@ -10,4 +10,4 @@ # This is a Makefile fragment, see src/libCom/Makefile. # Ensure that the lexer is built before it is needed -parse.c: $(TOOLS)/antelope$(HOSTEXE) +parse.c: $(EPICS_BASE_HOST_BIN)/antelope$(HOSTEXE)