As I promised some weeks ago, I would be patching the files makefile.b32
for users of Borland/CBuilder. Ref. 
http://curl.haxx.se/mail/lib-2011-03/0262.html

This patch does several things:

* 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.

I'll send a patch for src/Makefile.b32 in a separated email.

-----------------
--- Git-latest/lib/Makefile.b32 Thu Jan 20 12:22:45 2011
+++ lib/Makefile.b32 Tue Mar 22 21:59:51 2011
@@ -40,17 +40,17 @@
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 @@

.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 @@
all: $(OBJDIR) $(LIBCURL_LIB) $(LIBCURL_DLL)

clean:
+ cd $(OBJDIR)
+ @-$(RM) $(OBJECTS)
+ @-$(RM) $(PREPROCESSED)
+ cd ..
 @-$(RMDIR) $(OBJDIR)
 @-$(RM) $(LIBCURL_LIB)
 @-$(RM) $(LIBCURL_IMPLIB)

-----------------

Also attached.

--gv
--- Git-latest/lib/Makefile.b32 Thu Jan 20 12:22:45 2011
+++ lib/Makefile.b32    Tue Mar 22 21:59:51 2011
@@ -40,17 +40,17 @@
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 @@

.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 @@
all:    $(OBJDIR) $(LIBCURL_LIB) $(LIBCURL_DLL)

clean:
+       cd $(OBJDIR)
+       @-$(RM) $(OBJECTS)
+       @-$(RM) $(PREPROCESSED)
+       cd ..
        @-$(RMDIR) $(OBJDIR)
        @-$(RM) $(LIBCURL_LIB)
        @-$(RM) $(LIBCURL_IMPLIB)
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to