Hi Viktor,

Next notes to current hbmk2:

1. gtcrs and gtsln are not in the list of linked libraries, gtxwc is
   but see below.
   hbmk should have list of all core libraries and verify which ones
   exist in the lib dir.
2. hbmk2 does not add GT releated system libraries for static builds
   if -gt<name> switch is not used. It means that
      REQUEST HB_GT_<name>
   in source code does not work.
   For shared builds it should not be necessary for current SVN.
3. The logic for link time settings (GTs, fmstat, main func) is enabled also
   for -hbcmp and -hbcc what breaks these options. Try to make:
      hbmk2 -hbcmp t.prg
   with GCC.
4. /usr/lib/harbour/libharbour.so is still passed explicitly with the path
   to linked library list and hardcoded in final binaries. IMHO it should
   never happen. I think about the logic of detecting system library list
   but even if I implement it then hbmk2 will still create problems.
   Just simply such binaries cannot be used on other computers. In most
   of cases I have different local Harbour builds for production environment
   and I need distributable binaries as result of compilation not local only
   toys ;-) For local usage I can set any environment I want so I do not find
   it as a problem but I cannot say the same about destination computers.
   If you think it's usable for some reasons then please add new switch
   like -fullpath or -share[path] which will store paths to shared libraries
   in final binaries. But in such case please remember that you should not
   pass <path>/libharbour.{so,sl,dyn,dll,...} to GCC parameters when -c
   which is used in -hbcc or -hbcmp. In such form (not passed as -lharbour)
   it's only link time GCC parameter and should not be used to compile
   time phase.

best regards,
Przemek
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to