2012-04-01 17:07 UTC+0200 Viktor Szakats (harbour syenar.net)

* config/win/mingw.mk
    * removed undocumented way (committed in prev rev) to disable 
      separate compile pass for mingw Harbour-*.dll. if you're bothered, 
      use existing and documented: HB_BUILD_DYN=no
    ; NOTE: separate compile pass has another important benefit:
            it will finally remove the implicit .dll exports, IOW now 
            only explicitly exported symbols will be public, in sync 
            harbour-*.dlls created with all the other C compilers.
This commit is contained in:
Viktor Szakats
2012-04-01 15:07:33 +00:00
parent 7f657c2bb4
commit 358230f35c
2 changed files with 13 additions and 13 deletions

View File

@@ -16,6 +16,16 @@
The license applies to all entries newer than 2009-04-28.
*/
2012-04-01 17:07 UTC+0200 Viktor Szakats (harbour syenar.net)
* config/win/mingw.mk
* removed undocumented way (committed in prev rev) to disable
separate compile pass for mingw Harbour-*.dll. if you're bothered,
use existing and documented: HB_BUILD_DYN=no
; NOTE: separate compile pass has another important benefit:
it will finally remove the implicit .dll exports, IOW now
only explicitly exported symbols will be public, in sync
harbour-*.dlls created with all the other C compilers.
2012-04-01 16:30 UTC+0200 Viktor Szakats (harbour syenar.net)
* config/win/mingw.mk
+ solved mingw harbour dll and unicows problem, so now
@@ -25,8 +35,7 @@
to build objects with -DHB_DYNLIB (like with all the other
C compilers), but I left it enabled anyways to give uniform
support for unicows by default, including the nightly and
official builds. Look into the diff for an undocumented
way to disable this)
official builds.)
* config/win/watcom.mk
* config/win/xcc.mk

View File

@@ -12,17 +12,8 @@ OBJ_EXT := .o
LIB_PREF := lib
LIB_EXT := .a
3RDLIBS_DYN := $(3RDLIBS)
ifneq ($(HB_COMPILER),mingw64)
# Since unicows support in harbour-*.dll effectively
# doubles build time for core, allow it to be disabled.
ifeq ($(__HB_HARBOUR_DLL_UNICOWS),no)
3RDLIBS_DYN := $(filter-out $(3RDLIBS_DYN),unicows)
endif
ifneq ($(findstring unicows,$(3RDLIBS_DYN)),)
ifneq ($(findstring unicows,$(3RDLIBS)),)
# Required to be able to link harbour-*.dll against unicows lib
# without it 'Cannot export <*>: symbol not found' errors occur.
HB_DYN_COPT := -DHB_DYNLIB
@@ -136,7 +127,7 @@ AR_RULE = $(create_library)
DY := $(CC)
DFLAGS += -shared $(LIBPATHS)
DY_OUT := $(LD_OUT)
DLIBS := $(foreach lib,$(HB_USER_LIBS) $(LIBS) $(3RDLIBS_DYN) $(SYSLIBS),-l$(lib))
DLIBS := $(foreach lib,$(HB_USER_LIBS) $(LIBS) $(3RDLIBS) $(SYSLIBS),-l$(lib))
# NOTE: The empty line directly before 'endef' HAVE TO exist!
define dynlib_object