On 2012-02-09 03:51, David Holmes wrote:
make/defs.make:

+ ifneq (,$(SPEC))
+   include $(SPEC)
+ endif

Having the blank first looks odd. I assume you aren't using -inlcude because you want to see errors if SPEC is set but not found.

I guess it's an unconscious habit from java where you rather do "".equals(something) to avoid NPE. I will switch it around. And the assumption is correct. We used -include at first, but I figured that we wanted to know if the include failed at least on the root level Makefile.
make/windows/makefiles/compile.make:

The definitions of MT=mt.exe in each block for the different VS versions seems redundant. If we factor this out is there any reason not to group:

CXX=cl.exe
MT=mt.exe
RC=rc.exe
LD=link.exe

together and use the same "if (,$(SPEC))" approach?

Grouping them together would certainly look nicer, but MT isn't set for every possible compiler version. Not sure if that matters since we don't support older versions anyway, right?

As for testing for SPEC, this is nmake and the SPEC file is only gnumake compatible. CXX, MT, RC and LD are sent in to nmake on the command line from gnumake. They are then generated into local.make which is in turn included by sub invocations of nmake. Sending in SPEC as well seemed redundant to me, but we could send it in as a flag signaling that configure should be in control. Wouldn't look obviously better to me though. I'm open for suggestions.

/Erik

Reply via email to