lib/Makefile.b32: updates
authorGisle Vanem <gvanem@broadpark.no>
Thu, 7 Apr 2011 13:17:58 +0000 (15:17 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 7 Apr 2011 13:17:58 +0000 (15:17 +0200)
* Rename the object object directory from 'objs' to 'BCC_obj'. I feel
 it should be named properly. Ref. Makefile.Watcom where it's called
 'WC_Win32.obj'.

* Turn off these warnings to keep the build totally silent (with CBuilder-6
 that is).
  -w-inl    8026 Functions X are not expanded inline.
  -w-pia   8060 Possibly incorrect assignment
  -w-pin  8061 Initialization is only partially bracketed

I'm sure the warnings could be fixed the "proper" way or with some added
"#pragma" statements. But that just clutters the sources IMHO.

* $(MKDIR) and $(RMDIR) have been replaced with the shell-commands 'md'
 and 'rd'. When having MingW/Msys programs 'mkdir.exe' and 'rmdir.exe' in
$PATH, this confuses Borland's make and the result (the cleaning etc.) would
 not be as expected.

* Added a ".path.int = $(OBJDIR)" to tell make where the $(PREPROCESSED)
 files are. Why we need the preprocess step in the fist place is beyond me
(Yang?). But I'll leave that for now.

lib/Makefile.b32

index 6c97506..487993a 100644 (file)
@@ -40,17 +40,17 @@ PP_CMD   = cpp32 -q -P-
 CC_CMD   = bcc32 -q -c
 LD       = bcc32
 RM       = del 2>NUL
-MKDIR    = mkdir
-RMDIR    = rmdir /s /q 2>NUL
+MKDIR    = md
+RMDIR    = rd /q
 LIB      = tlib
 IMPLIB   = implib
 
-CC_FLAGS = -5 -O2 -tWM -w -w-aus -w-ccc -w-dup -w-prc -w-pro -w-rch -w-sig -w-spa -Dinline=__inline
+CC_FLAGS = -5 -O2 -tWM -w -w-aus -w-ccc -w-dup -w-prc -w-pro -w-rch -w-sig -w-spa -w-inl -w-pia -w-pin -Dinline=__inline
 LIBFLAGS = /C /P32
 LDFLAGS  = -q -lq -laa -tWD
 
 SRCDIR   = .
-OBJDIR   = .\objs
+OBJDIR   = .\BCC_objs
 INCDIRS  = -I.;..\include
 LINKLIB  = $(BCCDIR)\lib\cw32mt.lib
 DEFINES  = -DNDEBUG -DWIN32 -DBUILDING_LIBCURL
@@ -83,11 +83,13 @@ LINKLIB  = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\l
 
 .path.c   = $(SRCDIR)
 .path.obj = $(OBJDIR)
+.path.int = $(OBJDIR)
 
 # Makefile.inc provides the CSOURCES and HHEADERS defines
 !include Makefile.inc
 
 OBJECTS = $(CSOURCES:.c=.obj)
+PREPROCESSED = $(CSOURCES:.c=.int)
 
 .c.obj:
        @-$(RM) $(@R).int
@@ -97,6 +99,10 @@ OBJECTS = $(CSOURCES:.c=.obj)
 all:   $(OBJDIR) $(LIBCURL_LIB) $(LIBCURL_DLL)
 
 clean:
+       cd $(OBJDIR)
+       @-$(RM) $(OBJECTS)
+       @-$(RM) $(PREPROCESSED)
+       cd ..
        @-$(RMDIR) $(OBJDIR)
        @-$(RM) $(LIBCURL_LIB)
        @-$(RM) $(LIBCURL_IMPLIB)