cURL / Mailing Lists / curl-library / Single Mail

curl-library

Building with BCC (Was: Newbie Proglem with Compile)

From: Yang Tse <yangsita_at_gmail.com>
Date: Wed, 12 Jan 2011 03:42:40 +0100

Hi Gün, et all

2011/1/5 Guenter wrote:

> @Yang: hope you read that here, and can take a look at the macros in
> curlrules.h and probably have an idea what we can do here ...

I've just updated curlrules.h and Borland's makefiles...

First of all, the only version of BCC I've tried is the 5.5.1 free
one. AFAIK all of Borland's BCC are 'one-pass' compilers with an
integrated internal preprocessor. And fortunately with an additional
external preprocessor which is capable of accepting same options as
the compiler.

Both, the internal and external preprocessors are capable of using the
token-pasting operator ##, and both are capable of doing macro
expansion properly in many situations.

BUT as soon as both features are required to properly define a macro,
forget about ISO preprocessor compliance :-( and forget about 'proper'
macro expansion. No matter the levels of indirection used the results
are always ISO-surprising, at least for libcurl's intended usage.

The modification done to curlrules.h is BCC 5.5.1 specific and
requires usage of the external cpp32 preprocessor, makefiles updated
accordingly. Every source file gets externally preprocessed first with
cpp32 generating an intermediate source code file, I used extension
'.int' for these, and later compiled with bcc32 to generate each
object file.

We can not further expand support in curlrules.h to other BCC versions
unless someone shows up with a version different than 5.5.1. I would
assume that older versions exhibit same problems and that the same
definition in curlrules.h would be valid. But, who knows!

-- 
-=[Yang]=-
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html
Received on 2011-01-12