Hi Rajesh,
> I am not able to make out from the following hbc file, which libs will
> be used in compilng?
> platform: windows
> what does ${_HB_DYNPREF} or ${_HB_DYNSUFF} mean
> is there a documentation regarding hbc file anywhere,
I don't think there is a description in one single place, but there are
pieces of it scattered throughout the changelog, as it was developed in
steps. Unfortunately the pieces are hard to find, especially since the
names of certain keywords have changed over time.
I am not a .hbc file expert, but ... the ${SOMETHING} notation means
that the text inside the curly braces are macros or environment
variables. ${hb_name()} refers to the name of the .hbc file itself
(minus the ".hbc" extension), in this case "hbssl", which is also the
name of the Harbour wrapper lib. In the second case an "s" follows. You
can find hbssl and hbssls libs, matching what those lines specify, in
the lib directory of the nightly build. The _HB_DYN... variables help
building the names of the lib for linking dlls or linking statically,
depending on platform and toolchain, so each line, as you read it, is
platform and toolchain agnostic, but it gets platform and toolchain
specific when the macros and envvars are evaluated.
The lines at the end of the hbssl.hbc file specify the names of the
OpenSSL libs needed (the ones that the hbssl lib wraps). OpenSSL must be
downloaded separately from the OpenSSL project and installed in your
system. The README.md file in the root directory of the Harbour tree
explains how 3rd party libs are used.
For your situation the libs that will be linked are ssleay32 and libeay32.
Regards,
Klas