diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 2a618e99ef..957d7ebe7f 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,45 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-08-29 11:21 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + * contrib/hbssl/bio.c + - Disabled feature which doesn't seem to be exported via + implibs. + + + contrib/hbssl/hbssls.hbc + + contrib/hbssl/hbssls + + contrib/hbssl/hbssls/Makefile + * contrib/hbssl/hbssl.hbc + * contrib/hbssl/Makefile + * Default hbssl lib is now created to link dynamically (on Windows). + + Added static build of hbssl by the name hbssls, with new .hbc + file linking to static OpenSSL libs. + + * contrib/hbssl/Makefile + + contrib/hbssl/hbssls.hbc + * contrib/hbssl/hbssl.hbc + + * bin/hb-func.sh + - Commented creation of dynamic libs. Now it's done on GNU Make + level. + + * config/os2/gcc.mk + - Disabled os2/gcc .dll creation. If someone comes up with a working + solution we can readd it, but in current form it just broke os2/gcc + target with no short-term hope for a solution. + + * source/common/hbver.c + + Added "Embarcadero" to Borland C compiler name. + Borrowed from xhb / Andi Jahja + + Readded also "Borland" to both Embarcadero and CodeGear compiler + names. Probably for most ppl "Borland" tells a hell lot more than + these names which keep changing every second year. + + * contrib/gtwvg/Makefile + * contrib/hbtip/Makefile + * contrib/hbtip/hbtipssl/Makefile + * Formatting. + 2009-08-28 14:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * INSTALL * Updated Ubuntu external pkg list. diff --git a/harbour/bin/hb-func.sh b/harbour/bin/hb-func.sh index 02b4ce58d9..e104f3c061 100755 --- a/harbour/bin/hb-func.sh +++ b/harbour/bin/hb-func.sh @@ -898,12 +898,12 @@ mk_hblibso() else hb_mkdyn="${HB_BIN_INSTALL}/hb-mkdyn" fi - echo "Making ${full_lib_name}..." - ${hb_mkdyn} ${full_lib_name} ${LIBS} ${linker_options} - if [ "${LIBS}" != "${LIBSMT}" ]; then - echo "Making ${full_lib_name_mt}..." - ${hb_mkdyn} ${full_lib_name_mt} ${LIBSMT} ${linker_mtoptions} ${linker_options} - fi +# echo "Making ${full_lib_name}..." +# ${hb_mkdyn} ${full_lib_name} ${LIBS} ${linker_options} +# if [ "${LIBS}" != "${LIBSMT}" ]; then +# echo "Making ${full_lib_name_mt}..." +# ${hb_mkdyn} ${full_lib_name_mt} ${LIBSMT} ${linker_mtoptions} ${linker_options} +# fi for l in ${full_lib_name} ${full_lib_name_mt} do if [ -f $l ] diff --git a/harbour/config/os2/gcc.mk b/harbour/config/os2/gcc.mk index 91d4e13c4a..f75d9cd863 100644 --- a/harbour/config/os2/gcc.mk +++ b/harbour/config/os2/gcc.mk @@ -92,22 +92,22 @@ AR := $(HB_CCPATH)$(HB_CCPREFIX)ar ARFLAGS := AR_RULE = $(create_library) & $(RM) __lib__.tmp -DY := $(CC) -DFLAGS := -shared -DY_OUT := $(LD_OUT) -DLIBS := $(foreach lib,$(SYSLIBS),-l$(lib)) - +#DY := $(CC) +#DFLAGS := -shared +#DY_OUT := $(LD_OUT) +#DLIBS := $(foreach lib,$(SYSLIBS),-l$(lib)) +# # NOTE: The empty line directly before 'endef' HAVE TO exist! -define dyn_object - @$(ECHO) $(ECHOQUOTE)INPUT($(subst \,/,$(file)))$(ECHOQUOTE) >> __dyn__.tmp - -endef -define create_dynlib - $(if $(wildcard __dyn__.tmp),@$(RM) __dyn__.tmp,) - $(foreach file,$^,$(dyn_object)) - $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ __dyn__.tmp $(DLIBS) -Wl,--output-def,$(DYN_DIR)/$(basename $@).def,--out-implib,$(IMP_FILE) -endef - -DY_RULE = $(create_dynlib) +#define dyn_object +# @$(ECHO) $(ECHOQUOTE)INPUT($(subst \,/,$(file)))$(ECHOQUOTE) >> __dyn__.tmp +# +#endef +#define create_dynlib +# $(if $(wildcard __dyn__.tmp),@$(RM) __dyn__.tmp,) +# $(foreach file,$^,$(dyn_object)) +# $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ __dyn__.tmp $(DLIBS) -Wl,--output-def,$(DYN_DIR)/$(basename $@).def,--out-implib,$(IMP_FILE) +#endef +# +#DY_RULE = $(create_dynlib) include $(TOP)$(ROOT)config/rules.mk diff --git a/harbour/contrib/gtwvg/Makefile b/harbour/contrib/gtwvg/Makefile index c7289cfbdd..ab7fb349f2 100644 --- a/harbour/contrib/gtwvg/Makefile +++ b/harbour/contrib/gtwvg/Makefile @@ -6,35 +6,8 @@ ROOT := ../../ include $(TOP)$(ROOT)config/global.mk -HB_INC_DEPEND := -I$(TOP)$(ROOT)contrib/hbwin - LIBNAME := gtwvg -ifeq ($(HB_WITH_GTWVG),) - ifeq ($(HB_PLATFORM),win) - ifeq ($(HB_COMPILER),mingw) - HB_WITH_GTWVG := yes - endif - ifeq ($(HB_COMPILER),msvc) - HB_WITH_GTWVG := yes - endif - ifeq ($(HB_COMPILER),watcom) - HB_WITH_GTWVG := yes - endif - ifeq ($(HB_COMPILER),pocc) - HB_WITH_GTWVG := yes - endif - ifeq ($(HB_COMPILER),icc) - HB_WITH_GTWVG := yes - endif - ifeq ($(HB_COMPILER),bcc) - HB_WITH_GTWVG := yes - endif - endif -endif - -ifeq ($(HB_WITH_GTWVG),yes) - C_SOURCES := \ gtwvg.c \ wvgcore.c \ @@ -81,13 +54,40 @@ PRG_HEADERS := \ wvtwin.ch \ wvgparts.ch \ -include $(TOP)$(ROOT)config/header.mk -INSTALL_RULE_HEADERS := $(INSTALL_RULE) -include $(TOP)$(ROOT)config/lib.mk +ifeq ($(HB_WITH_GTWVG),) + ifeq ($(HB_PLATFORM),win) + ifeq ($(HB_COMPILER),mingw) + HB_WITH_GTWVG := yes + endif + ifeq ($(HB_COMPILER),msvc) + HB_WITH_GTWVG := yes + endif + ifeq ($(HB_COMPILER),watcom) + HB_WITH_GTWVG := yes + endif + ifeq ($(HB_COMPILER),pocc) + HB_WITH_GTWVG := yes + endif + ifeq ($(HB_COMPILER),icc) + HB_WITH_GTWVG := yes + endif + ifeq ($(HB_COMPILER),bcc) + HB_WITH_GTWVG := yes + endif + endif +endif -install:: +ifeq ($(HB_WITH_GTWVG),yes) + + HB_INC_DEPEND := -I$(TOP)$(ROOT)contrib/hbwin + + include $(TOP)$(ROOT)config/header.mk + INSTALL_RULE_HEADERS := $(INSTALL_RULE) + include $(TOP)$(ROOT)config/lib.mk + + install:: $(INSTALL_RULE_HEADERS) else -include $(TOP)$(ROOT)config/none.mk + include $(TOP)$(ROOT)config/none.mk endif diff --git a/harbour/contrib/hbssl/Makefile b/harbour/contrib/hbssl/Makefile index f4dd4768d7..77ff35337f 100644 --- a/harbour/contrib/hbssl/Makefile +++ b/harbour/contrib/hbssl/Makefile @@ -34,6 +34,9 @@ ifneq ($(HB_HAS_OPENSSL),) ifeq ($(HB_PLATFORM),darwin) HB_CFLAGS += -DOPENSSL_NO_SHA256 -DOPENSSL_NO_SHA512 -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_SEED -DOPENSSL_NO_DGRAM -DHB_OPENSSL_OLD_OSX_ endif + ifneq ($(filter $(HB_PLATFORM),win wce),) + HB_CFLAGS += -DOPENSSL_OPT_WINDLL + endif include $(TOP)$(ROOT)config/header.mk INSTALL_RULE_HEADERS := $(INSTALL_RULE) @@ -42,6 +45,10 @@ ifneq ($(HB_HAS_OPENSSL),) install:: $(INSTALL_RULE_HEADERS) + ifneq ($(filter $(HB_PLATFORM),win wce),) + DIRS += hbssls + include $(TOP)$(ROOT)config/dir.mk + endif else include $(TOP)$(ROOT)config/none.mk endif diff --git a/harbour/contrib/hbssl/bio.c b/harbour/contrib/hbssl/bio.c index 56767b6e7c..e70ceb4842 100644 --- a/harbour/contrib/hbssl/bio.c +++ b/harbour/contrib/hbssl/bio.c @@ -85,8 +85,10 @@ static BIO_METHOD * hb_BIO_METHOD_par( int iParam ) case HB_BIO_METHOD_S_CONNECT : p = BIO_s_connect(); break; case HB_BIO_METHOD_S_ACCEPT : p = BIO_s_accept(); break; case HB_BIO_METHOD_S_FD : p = BIO_s_fd(); break; +#if 0 /* BIO_s_log() isn't exported via implibs on Windows at version 0.9.8k. [vszakats] */ #ifndef OPENSSL_SYS_OS2 case HB_BIO_METHOD_S_LOG : p = BIO_s_log(); break; +#endif #endif case HB_BIO_METHOD_S_BIO : p = BIO_s_bio(); break; #ifndef OPENSSL_NO_DGRAM @@ -119,8 +121,10 @@ static int hb_BIO_METHOD_ptr_to_id( const BIO_METHOD * p ) else if( p == BIO_s_connect() ) n = HB_BIO_METHOD_S_CONNECT; else if( p == BIO_s_accept() ) n = HB_BIO_METHOD_S_ACCEPT; else if( p == BIO_s_fd() ) n = HB_BIO_METHOD_S_FD; +#if 0 /* BIO_s_log() isn't exported via implibs on Windows at version 0.9.8k. [vszakats] */ #ifndef OPENSSL_SYS_OS2 else if( p == BIO_s_log() ) n = HB_BIO_METHOD_S_LOG; +#endif #endif else if( p == BIO_s_bio() ) n = HB_BIO_METHOD_S_BIO; #ifndef OPENSSL_NO_DGRAM diff --git a/harbour/contrib/hbssl/hbssl.hbc b/harbour/contrib/hbssl/hbssl.hbc index 91a3581d7c..a3a8a22f81 100644 --- a/harbour/contrib/hbssl/hbssl.hbc +++ b/harbour/contrib/hbssl/hbssl.hbc @@ -8,7 +8,6 @@ incpaths=. libs=hbssl -{win&!mingw}libs=ssleay32 libeay32 -{mingw}libs=ssl ssl32 crypto eay32 {unix}libs=ssl crypto {os2}libs=openssl ssl crypto libosslfips +{win}libs=ssleay32 libeay32 diff --git a/harbour/contrib/hbssl/hbssls.hbc b/harbour/contrib/hbssl/hbssls.hbc new file mode 100644 index 0000000000..a098eceb70 --- /dev/null +++ b/harbour/contrib/hbssl/hbssls.hbc @@ -0,0 +1,14 @@ +# +# $Id$ +# + +{dos}skip=yes + +incpaths=. + +libs=hbssls + +{unix}libs=ssl crypto +{os2}libs=openssl ssl crypto libosslfips +{win&!mingw}libs=ssleay32 libeay32 +{mingw}libs=ssl ssl32 crypto eay32 diff --git a/harbour/contrib/hbssl/hbssls/Makefile b/harbour/contrib/hbssl/hbssls/Makefile new file mode 100644 index 0000000000..6a5170ad19 --- /dev/null +++ b/harbour/contrib/hbssl/hbssls/Makefile @@ -0,0 +1,37 @@ +# +# $Id$ +# + +ROOT := ../../../ + +include $(TOP)$(ROOT)config/global.mk + +vpath %.c ../ + +LIBNAME := hbssls + +C_SOURCES := \ + hbssl.c \ + bio.c \ + err.c \ + evp.c \ + evpciph.c \ + evpenc.c \ + evpmd.c \ + evppkey.c \ + pem.c \ + rand.c \ + ssl.c \ + sslciph.c \ + sslctx.c \ + sslsess.c \ + x509.c \ + +ifneq ($(HB_HAS_OPENSSL),) + + HB_CFLAGS += $(foreach d,$(HB_HAS_OPENSSL),-I$(d)) + + include $(TOP)$(ROOT)config/lib.mk +else + include $(TOP)$(ROOT)config/none.mk +endif diff --git a/harbour/contrib/hbtip/Makefile b/harbour/contrib/hbtip/Makefile index ecc52e526c..58e3c97d86 100644 --- a/harbour/contrib/hbtip/Makefile +++ b/harbour/contrib/hbtip/Makefile @@ -8,8 +8,6 @@ include $(TOP)$(ROOT)config/global.mk LIBNAME := hbtip -ifneq ($(HB_PLATFORM),dos) - C_SOURCES := \ encmthd.c \ utils.c \ @@ -37,19 +35,20 @@ PRG_HEADERS := \ thtml.ch \ tip.ch \ -include $(TOP)$(ROOT)config/header.mk -INSTALL_RULE_HEADERS := $(INSTALL_RULE) -include $(TOP)$(ROOT)config/lib.mk +ifneq ($(HB_PLATFORM),dos) -ifneq ($(HB_HAS_OPENSSL),) - DIRS := hbtipssl + include $(TOP)$(ROOT)config/header.mk + INSTALL_RULE_HEADERS := $(INSTALL_RULE) + include $(TOP)$(ROOT)config/lib.mk - include $(TOP)$(ROOT)config/dir.mk -endif + ifneq ($(HB_HAS_OPENSSL),) + DIRS := hbtipssl + include $(TOP)$(ROOT)config/dir.mk + endif -install:: + install:: $(INSTALL_RULE_HEADERS) else -include $(TOP)$(ROOT)config/none.mk + include $(TOP)$(ROOT)config/none.mk endif diff --git a/harbour/contrib/hbtip/hbtipssl/Makefile b/harbour/contrib/hbtip/hbtipssl/Makefile index 9875bb2d2c..dfcef4d0e0 100644 --- a/harbour/contrib/hbtip/hbtipssl/Makefile +++ b/harbour/contrib/hbtip/hbtipssl/Makefile @@ -11,11 +11,6 @@ vpath %.prg ../ LIBNAME := hbtipssl -ifneq ($(HB_HAS_OPENSSL),) - -HB_PRGFLAGS += -DHB_HAS_OPENSSL -HB_INC_DEPEND := -I$(TOP)$(ROOT)contrib/hbssl - C_SOURCES := \ encmthd.c \ utils.c \ @@ -39,8 +34,12 @@ PRG_SOURCES := \ thtml.prg \ url.prg \ -include $(TOP)$(ROOT)config/lib.mk +ifneq ($(HB_HAS_OPENSSL),) + HB_PRGFLAGS += -DHB_HAS_OPENSSL + HB_INC_DEPEND := -I$(TOP)$(ROOT)contrib/hbssl + + include $(TOP)$(ROOT)config/lib.mk else -include $(TOP)$(ROOT)config/none.mk + include $(TOP)$(ROOT)config/none.mk endif diff --git a/harbour/source/common/hbver.c b/harbour/source/common/hbver.c index 2ad1f97f13..602a04c72b 100644 --- a/harbour/source/common/hbver.c +++ b/harbour/source/common/hbver.c @@ -535,7 +535,11 @@ char * hb_verCompiler( void ) #elif defined( __BORLANDC__ ) #if ( __BORLANDC__ >= 1424 ) /* Version 5.9 */ - pszName = "CodeGear C++"; + #if ( __BORLANDC__ >= 1568 ) /* Version 6.2 */ + pszName = "Borland/Embarcadero C++"; + #else + pszName = "Borland/CodeGear C++"; + #endif #else pszName = "Borland C++"; #endif