2023-12-21 18:14 UTC-0500 Ron Pinkas <ronpinkas/AT/gmail/com>
* .gitignore
+ Added *.tds, *.il?
* config/w32/bcc32.cf
* Default CC and LD to bcc32 only if NOT set already
* make_bc.bat
+ Added auto detection of C:\BCC102 Embarcadero Free BCC C++ 7.30 in CLANG mode (bcc32c.exe)
* tests/dll_b32.mak
* Default CC and LD to bcc32 only if NOT set already
+ Add -L$(BCC_LIB)
* winmake/compile.mak
* Replace CC_CMD_HARU with existing CCC_CMD
* winmake/makefile.bc
* Default RC to rc.exe if CC is bcc32c
* Default CC only if not set already
- Remove '-d' from OPTFLAFGS (I suspect it was a typo)
+ Added logic to set differentt flags for legacy bcc32 vs CLang based bcc32c
+ Added -L$(BCC_LIB) to link commands. This allows build using auto detection
User does not have to specify any setting to build with Free Embaracadero.
* Alternate syntax when using brc32.exe vs. rc.exe
* winmake/makefile.vc
- Remove no longer needed CC_CMD_HARU
I did not test with bcc32.exe. Lett me know what errors it produce so we
may consider our options.
Il 22/12/2023 00:21, Ron Pinkas ha scritto:
I did not test with bcc32.exe. Lett me know what errors it produce so we may consider our options.
Warning W8065 contrib\hbhpdf\hpdf_utils.c 219: Call to function 'modff'
with no prototype in function HPDF_FToA
Warning W8065 contrib\hbhpdf\hpdf_utils.c 223: Call to function 'modff'
with no prototype in function HPDF_FToA
Error E2108 contrib\hbhpdf\hpdf_utils.c 235: Improper use of typedef 'HPDF_UINT32' in function HPDF_FToA
Error E2378 contrib\hbhpdf\hpdf_utils.c 235: For statement missing ; in function HPDF_FToA
Error E2451 contrib\hbhpdf\hpdf_utils.c 235: Undefined symbol 'i' in
function HPDF_FToA
Error E2379 contrib\hbhpdf\hpdf_utils.c 235: Statement missing ; in
function HPDF_FToA
Warning W8065 contrib\hbhpdf\hpdf_utils.c 219: Call to function 'modff'
with no prototype in function HPDF_FToA
Warning W8065 contrib\hbhpdf\hpdf_utils.c 223: Call to function 'modff'
with no prototype in function HPDF_FToA
Error E2108 contrib\hbhpdf\hpdf_utils.c 235: Improper use of typedef
'HPDF_UINT32' in function HPDF_FToA
Error E2378 contrib\hbhpdf\hpdf_utils.c 235: For statement missing ; in
function HPDF_FToA
Error E2451 contrib\hbhpdf\hpdf_utils.c 235: Undefined symbol 'i' in
function HPDF_FToA
Error E2379 contrib\hbhpdf\hpdf_utils.c 235: Statement missing ; in
function HPDF_FToA
Enrico,
We can not fix the errors on line 235 without modifying the source. OTOH
that bcc32.exe is distributed along with bcc32c.exe which does compile xHarbour and all contribs fine. My preference is to advise bcc32.exe
users to switch to the free bcc32c.exe.
Il 22/12/2023 16:36, Ron Pinkas ha scritto:
Warning W8065 contrib\hbhpdf\hpdf_utils.c 219: Call to function 'modff' with no prototype in function HPDF_FToA
Warning W8065 contrib\hbhpdf\hpdf_utils.c 223: Call to function 'modff' with no prototype in function HPDF_FToA
Error E2108 contrib\hbhpdf\hpdf_utils.c 235: Improper use of typedef 'HPDF_UINT32' in function HPDF_FToA
Error E2378 contrib\hbhpdf\hpdf_utils.c 235: For statement missing ; in function HPDF_FToA
Error E2451 contrib\hbhpdf\hpdf_utils.c 235: Undefined symbol 'i' in function HPDF_FToA
Error E2379 contrib\hbhpdf\hpdf_utils.c 235: Statement missing ; in function HPDF_FToA
Enrico,
We can not fix the errors on line 235 without modifying the source. OTOH that bcc32.exe is distributed along with bcc32c.exe which does compile xHarbour and all contribs fine. My preference is to advise bcc32.exe
users to switch to the free bcc32c.exe.
There is only one line in all the project that uses inline declaration,
as far as know. It is not a good reason to force a compiler change.
Can't we just "fix" that single line? It would not be much work to
change it again in the future harupdf updates. I take myself the responsibility to make that change. Can you agree? Otherwise nobody will
use the new xHarbour builds, I'm afraid.
Il 22/12/2023 16:36, Ron Pinkas ha scritto:
Warning W8065 contrib\hbhpdf\hpdf_utils.c 219: Call to function 'modff' with no prototype in function HPDF_FToA
Warning W8065 contrib\hbhpdf\hpdf_utils.c 223: Call to function 'modff' with no prototype in function HPDF_FToA
Error E2108 contrib\hbhpdf\hpdf_utils.c 235: Improper use of typedef 'HPDF_UINT32' in function HPDF_FToA
Error E2378 contrib\hbhpdf\hpdf_utils.c 235: For statement missing ; in function HPDF_FToA
Error E2451 contrib\hbhpdf\hpdf_utils.c 235: Undefined symbol 'i' in function HPDF_FToA
Error E2379 contrib\hbhpdf\hpdf_utils.c 235: Statement missing ; in function HPDF_FToA
Enrico,
We can not fix the errors on line 235 without modifying the source. OTOH that bcc32.exe is distributed along with bcc32c.exe which does compile xHarbour and all contribs fine. My preference is to advise bcc32.exe
users to switch to the free bcc32c.exe.
There is only one line in all the project that uses inline declaration,
as far as know. It is not a good reason to force a compiler change.
Can't we just "fix" that single line? It would not be much work to
change it again in the future harupdf updates. I take myself the responsibility to make that change. Can you agree? Otherwise nobody will
use the new xHarbour builds, I'm afraid.
FWIW I do not believe in forcing anything but I do beleive in
encouraging developers to use latest available versions of their
compilers, or at least a version that support latest standard,
especially when such upgrades are FREE and open source. In this
case we are talking about "forcing" a standard c99 that is 4 versions
old:
C99 - 1999
C11 - 2011
C17 - 2017
C23 - 2023
Just as important, through the last decade there has been a general
market sshift toward a new open source, modern, written from scratch
C/C++ compiler (LLVM/CLang) which is so good that first time ever we
see, Apple, Microsoft, Borland (Mercadero) switch to using it over their
own inhouse legacy compilers, and even huge success in the Linux world
(over GCC). So since its FREE open source, and much supperior I believe
we should encourage users to upgrade, allowing nicer modern extensions.
:)
Il 22/12/2023 17:26, Ron Pinkas ha scritto:
FWIW I do not believe in forcing anything but I do beleive in
encouraging developers to use latest available versions of their
compilers, or at least a version that support latest standard,
especially when such upgrades are FREE and open source. In this
case we are talking about "forcing" a standard c99 that is 4 versions
old:
C99 - 1999
C11 - 2011
C17 - 2017
C23 - 2023
Just as important, through the last decade there has been a general
market sshift toward a new open source, modern, written from scratch
C/C++ compiler (LLVM/CLang) which is so good that first time ever we
see, Apple, Microsoft, Borland (Mercadero) switch to using it over their own inhouse legacy compilers, and even huge success in the Linux world (over GCC). So since its FREE open source, and much supperior I believe
we should encourage users to upgrade, allowing nicer modern extensions.
:)
I strongly agree with you. If it were me I already switched to BCC32
CLANG, as I already done with BCC64 (that is CLANG only). The problem
was that xHarbour did not build with BCC32 CLANG in the past, so noone
could have used it. Now we can use it (thanks to you!) and I would be
happy to spread the news. But I don't have BCC32 CLANG so I cannot make
the harbour builds for it, sorry.
I strongly agree with you. If it were me I already switched to BCC32
CLANG, as I already done with BCC64 (that is CLANG only). The problem
was that xHarbour did not build with BCC32 CLANG in the past, so noone
could have used it. Now we can use it (thanks to you!) and I would be
happy to spread the news. But I don't have BCC32 CLANG so I cannot make
the harbour builds for it, sorry.
Understood. I hope you know (and the rest of the community) that you can
get the FREE Enbarcadero BCC 7.30 which has bcc32c.exe (CLang) and is
fully supported by xHarbour.
Il 23/12/2023 00:21, Ron Pinkas ha scritto:
I strongly agree with you. If it were me I already switched to BCC32 CLANG, as I already done with BCC64 (that is CLANG only). The problem
was that xHarbour did not build with BCC32 CLANG in the past, so noone could have used it. Now we can use it (thanks to you!) and I would be happy to spread the news. But I don't have BCC32 CLANG so I cannot make the harbour builds for it, sorry.
Understood. I hope you know (and the rest of the community) that you can get the FREE Enbarcadero BCC 7.30 which has bcc32c.exe (CLang) and is
fully supported by xHarbour.
I don't like it, too old.
Understood. I hope you know (and the rest of the community) that you can >>> get the FREE Enbarcadero BCC 7.30 which has bcc32c.exe (CLang) and is
fully supported by xHarbour.
I don't like it, too old.
Yer bcc32.exe is much much older. :)
Il 23/12/2023 17:06, Ron Pinkas ha scritto:
Understood. I hope you know (and the rest of the community) that you can
get the FREE Enbarcadero BCC 7.30 which has bcc32c.exe (CLang) and is fully supported by xHarbour.
I don't like it, too old.
Yer bcc32.exe is much much older. :)
No, I meant, BCC 7.30 is too old. Latest version is BCC 7.70.
No, I meant, BCC 7.30 is too old. Latest version is BCC 7.70.
Yes, but it is MUCH newer and bettter than the bcc32.exe build that you provide. :)
(Even if you use very latest Embracadero the bcc32.exe in it is
basically same as bcc 5.5. or 5.8)
| Sysop: | Keyop |
|---|---|
| Location: | Huddersfield, West Yorkshire, UK |
| Users: | 714 |
| Nodes: | 16 (2 / 14) |
| Uptime: | 134:59:02 |
| Calls: | 12,087 |
| Files: | 14,997 |
| Messages: | 6,517,357 |