From e073e13b4d7c830d1e7144c22a1ab1c225f47a39 Mon Sep 17 00:00:00 2001 From: Thomas Knudsen Date: Mon, 18 Dec 2017 12:35:06 +0100 Subject: Enable wildcard globbing for MSVC builds (#714) * Enable wildcard globbing for MSVC builds * Use globbing to run all gie tests * Despite merge title: Also use wildcards on gie tests when using GNU compilers --- src/CMakeLists.txt | 9 +++++++++ src/makefile.vc | 12 ++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 494eef9b..c4f4dd20 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -11,6 +11,7 @@ option(BUILD_NAD2BIN "Build nad2bin (format conversion tool)" ON) option(BUILD_PROJ "Build proj (cartographic projection tool : latlong <-> projected coordinates)" ON) if(NOT MSVC) + if (NOT APPLE) # Use relative path so that package is relocatable set(CMAKE_INSTALL_RPATH "\$ORIGIN/../${LIBDIR}") @@ -22,6 +23,14 @@ if(NOT MSVC) # (2) setting the INSTALL_RPATH property on the executables to # "@loader_path/../${LIBDIR}" endif () + +else () + + # Linking to setargv.obj enables wildcard globbing for the + # command line utilities, when compiling with MSVC + # https://docs.microsoft.com/da-dk/cpp/c-language/expanding-wildcard-arguments + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} setargv.obj") + endif () if(BUILD_CCT) diff --git a/src/makefile.vc b/src/makefile.vc index 1155035e..c9ebd24c 100644 --- a/src/makefile.vc +++ b/src/makefile.vc @@ -102,27 +102,27 @@ proj_i.lib: $(LIBOBJ) if exist $(PROJ_DLL).manifest mt -manifest $(PROJ_DLL).manifest -outputresource:$(PROJ_DLL);2 $(PROJ_EXE): $(PROJEXE_OBJ) $(EXE_PROJ) - cl $(PROJEXE_OBJ) $(EXE_PROJ) + cl $(PROJEXE_OBJ) $(EXE_PROJ) /link setargv.obj if exist $(PROJ_EXE).manifest mt -manifest $(PROJ_EXE).manifest -outputresource:$(PROJ_EXE);1 $(CS2CS_EXE): $(CS2CSEXE_OBJ) $(EXE_PROJ) - cl $(CS2CSEXE_OBJ) $(EXE_PROJ) + cl $(CS2CSEXE_OBJ) $(EXE_PROJ) /link setargv.obj if exist $(CS2CS_EXE).manifest mt -manifest $(CS2CS_EXE).manifest -outputresource:$(CS2CS_EXE);1 $(GEOD_EXE): $(GEODEXE_OBJ) $(EXE_PROJ) - cl $(GEODEXE_OBJ) $(EXE_PROJ) + cl $(GEODEXE_OBJ) $(EXE_PROJ) /link setargv.obj if exist $(GEOD_EXE).manifest mt -manifest $(GEOD_EXE).manifest -outputresource:$(GEOD_EXE);1 $(CCT_EXE): $(CCTEXE_OBJ) $(EXE_PROJ) - cl $(CCTEXE_OBJ) $(EXE_PROJ) + cl $(CCTEXE_OBJ) $(EXE_PROJ) /link setargv.obj if exist $(CCT_EXE).manifest mt -manifest $(CCT_EXE).manifest -outputresource:$(CCT_EXE);1 $(GIE_EXE): $(GIEEXE_OBJ) $(EXE_PROJ) - cl $(GIEEXE_OBJ) $(EXE_PROJ) + cl $(GIEEXE_OBJ) $(EXE_PROJ) /link setargv.obj if exist $(GIE_EXE).manifest mt -manifest $(GIE_EXE).manifest -outputresource:$(GIE_EXE);1 $(NAD2BIN_EXE): nad2bin.obj emess.obj $(EXE_PROJ) - cl nad2bin.obj emess.obj $(EXE_PROJ) + cl nad2bin.obj emess.obj $(EXE_PROJ) /link setargv.obj $(MULTISTRESSTEST_EXE): $(MULTISTRESSTEST_OBJ) cl $(MULTISTRESSTEST_OBJ) $(EXE_PROJ) -- cgit v1.2.3