* contrib/hbssl/Makefile
+ contrib/hbssl/sslerr.c
+ contrib/hbssl/sslx509.c
* contrib/hbssl/ssl.c
* contrib/hbssl/sslctx.c
* contrib/hbssl/hbssl.ch
* contrib/hbssl/tests/test.prg
+ Added ERR_*() API functions.
+ Prefixed .ch contant names with HB_ to avoid collision with
ssl own headers.
+ Added SSL_CTX_SET_MODE(), SSL_CTX_GET_MODE() functions.
+ Added HB_SSL_READ_ALL(), HB_SSL_READ_LINE() functions meaning
to mimic HB_INETRECVALL() and HB_INETRECVLINE(). (probably needs
more work, it'd be great if someone who understands the guts of
these inet functions could take a look)
* SSL_PEEK() synced with SSL_READ() recent changes.
+ Added SSL_SET_MODE(), SSL_GET_MODE(), SSL_SET_MTU() functions.
+ Added SSL_GET_RBIO(), SSL_GET_WBIO() functions.
+ Added SSL_GET_PEER_CERTIFICATE() function.
+ Added X509_GET_SUBJECT_NAME(), X509_GET_ISSUER_NAME(), X509_NAME_ONELINE()
+ Added HB_SSL_MODE_* constants.
* include/hbextern.ch
* Changed to use new hbextlng.ch.
- examples/hbextern/hbextern.lst
! It wasn't deleted in 2009-07-18 21:37 UTC+0600 for some reason.
* source/rtl/console.c
! Fixed OUTSTD() and OUTERR() to output separator space
to std/err instead of alt.
* source/rtl/hbinet.c
% Minor optimization.
- examples/hbextern/hbextern.lst
* examples/hbextern/hbextern.prg
; hbextern.ch_, hbextcdp.ch_, and hbextlng.ch_ will have the copyright
comment from the existing include file; contrib output will not
* minor optimizations
- removed use of hbextern.lst
+ auto-generated .ch_ files for contrib folders
; these will have same name as contrib folder
; generic copyright message using doc/hdr_tpl.txt as template
; the include folder has some files matching the contrib
folder names but with non-extern content; these files
must be merged by hand, or a #include statement used
* contrib/hbssl/Makefile
* contrib/hbssl/hbssl.h
* contrib/hbssl/hbssl.ch
* contrib/hbssl/sslctx.c
* contrib/hbssl/ssl.c
+ contrib/hbssl/sslbio.c
* contrib/hbssl/tests/test.prg
! Fixed a few bugs and typos, so now the test works.
+ Added very basic BIO interface.
* harbour/source/macro/macro.y
* harbour/source/macro/macro.yyc
% improved macrocompiler speed by reducing number of memory
allocations for compiled subexpressions
* harbour/source/pp/Makefile
* removed old HB_PP_RULES used for precomputed pptables
* added protection against setting possible actions executed without
HB_ARCHITECTURE and HB_COMPILER
* config/globsh.cf
+ Attempt to fix dos shell clean rules. Please test.
+ Attempt to fix os2 shell clean rules. Obviously blind attempt.
* RDP -> RD for os2 since it cannot remove full paths in OS/2 (AFAIK).
+ Added '@' to all os2 dirbase and clean commands.
* harbour/source/pp/Makefile
! set EXE_FILE - it's workaround to force bin/<arch>/<cmp> directory
creation in current make files and then cleaning it if possible
* harbour/config/rules.cf
* removed old hardcoded clean rules which deleted files not created
by build process
* harbour/config/instsh.cf
* pacified install command echo
* harbour/config/globsh.cf
! fixed new sh clean rules: [ ! -f $(LIB_DIR)/* ] causes syntax
error when more then one file exists in $(LIB_DIR) directory
* source/pp/Makefile
! Fixed to delete hbpp.tds.
* config/globsh.cf
+ Attempt to fix nt shell clean rules. Please test.
! Fixed to create bin dir even when lib targets are being
created. This hack is needed to support existing hack
inside source/pp/Makefile. If there is any possibility
to solve current hbpp lib+bin rules in some cleaner ways
IMO we should do it, but so far I couldn't figure out
how current method works.
* config/globsh.cf
! Minor fix dir creation to rules. (only create bin/lib target
dir when bin/lib target is actually specified)
% Minor cleanup to clean rules.
* make_gnu.sh
! Changed to use gmake on all sunos systems.
* utils/hbmk2/hbmk2.prg
* config/sunos/gcc.cf
! Added space after -o CC option. Required by some sunos systems.
; Thanks for valuable input and testing to Tamas Tevesz.
* config/instsh.cf
* shell/nt rule $(MD) -> $(MDP). (just for clarity)
* config/globsh.cf
* dos shell fixed again. Now I had to delete '.exe' extension
from tools to stay withing cmdline limit (for single file
copy commands)
* make_gnu.sh
* config/global.cf
+ Readded HB_GPM_MOUSE detection to starter script.
; TOFIX: This logic should be moved to GNU Make global.cf.
+ Readded HB_COMMERCE logic but now to global.cf, to
deal with Harbour-wide settings, currently this is only
HB_GPM_MOUSE. lib-specific HB_COMMERCE issues should be
handled in local Makefiles.
* config/global.cf
* Minor formatting.
* TODO added (host CPU detection on non-win platforms).
* config/hpux/gcc.cf
* config/darwin/gcc.cf
* config/global.cf
* config/sunos/gcc.cf
* config/bsd/gcc.cf
- GPM isn't available on these platforms so it's not necessary
to handle it in these make files.
* utils/hbmk2/Makefile
* utils/hbrun/Makefile
! Changed ordering of hbcpl/hbpp/hbcommon libs to this:
hbcplr, hbpp, hbcommon
(from this: hbpp, hbcplr, hbcommon
and this: hbcommon, hbpp, hbcplr)
This syncs it with existing .hbp lib order and hopefully
fixes link problems on sunos/sparc, reported by a user.
Please retest & report results.
* tests/rddtest/make_c53.bat
* Minor formatting.
- tests/run.bat
- tests/run_all.bat
- Deleted. We need some portable concept here, but my guess is
that it's been a very long time since anyonw tried to run all
test program in a row.
* harbour/source/rtl/gtcrs/Makefile
* test for HB_COMPILER=djgpp instead of HB_ARCHITECTURE=dos to
activate trick used to detect PDCURSES in DJGPP builds when
* config/globsh.cf
+ Reworked 'clean' rules. Now whole bin/obj/lib dirs should
disappear with any .tds files in them.
OS/2 shell is the only black sheep here, I've updated it,
but since I cannot try it, it may not work.
% Deleted MV variable. Not used in Harbour.
+ Added MDP variable for nt.
* bin/postinst.bat
! Fixed for MS-DOS. Again.
Here ChangeLog again causes some problems.
* config/globsh.cf
% Removed some redundancy regarding tool path forming.
+ config/dj-mkdir.exe
+ config/dj-cp.exe
+ config/dj-rm.exe
* config/instsh.cf
* config/globsh.cf
+ Solved the MS-DOS dir creation and neverending copy problem by
uploading MS-DOS versions of well working GNU tools. Also added
'rm' tool to facilitate 'clean'.
Maybe this is the ultimate solution for all these build difficulties,
we could do the same for win and OS/2, for OS/2 it's probably safe
to do as the platform isn't evolving anymore.
(placement and naming of these tools may change in future commits)
+ Added DJGPP 2.04 GNU Tools.
* Changed dos shell rules to use DOS GNU Tools.
% Deleted dos/watcom specific COMSPEC shell hack (and with it
the QUESTION).
* make_gnu.bat
- config/djg-make.exe
+ config/dj-make.exe
* Renamed to have common prefix with newly added tools.
(and fit into 8.3)
* harbour/config/dir.cf
! fixed typo in include path
* disabled parallel processing in DOS hosts - it does not work
correctly and it looks like a problem with nested directory
change in DJGPP port of GNU make.
* config/global.cf
* config/instsh.cf
* config/dirsh.cf
* config/globsh.cf
* Restored compatibility with pre-3.81 GNU Make versions.
(some user feedback features are now disabled for older versions)
* source/pp/Makefile
* config/rules.cf
* config/global.cf
+ Added new internal variable HB_HOST_BIN_DIR to avoid touching
original HB_BIN_COMPILE and in turn mess up __PLATFORM__ macro
definitions in recursive runs to GNU Make.
* config/global.cf
* config/instsh.cf
! Fixed to only set __PLATFORM__ flags if there is really a cross
build situation. This is to avoid redefinition warnings with dos
on win builds.
; QUESTION: BTW, could we modify harbour compiler to not throw
these redef warnings for internally defined macros? This problem is
still present if user is manually configuring HB_BIN_COMPILE to
a platform native executable.
! Hack added to dos shell install rule to create HB_INSTALL_PREFIX
first. Of course there is no guarantee that this envvar is set,
or that it's one level up to HB_*_INSTALL dir, or that its parent
exist, but anyway I don't know any better.
* config/instsh.cf
* config/globsh.cf
! Fixed to use plain copy command in DOS. Previous xcopy solution
returned with the dumb 'is it a file or dir?' message.
'copy' seems to overwrite existing target so no need to mess with
/Y switch, but it may be that I'm overlooking something.
* OS/2 $(CP) command changed to contain CMDPREF. This causes a little
change in .c to .yyc rule, at the same time it syncs this shell with
others. I hope it's harmless.
; TOFIX: install dir creation doesn't work for dos shells.
Anyone knows a trick to create a multilevel dir in plain DOS? (aka mkdir -p)
; TOFIX: dos/watcom does this: (should we force native harbour compiler?)
../../../../../bin/dos/watcom/harbour.exe ../../../achoice.prg -n1 -gc3 -undef:__PLATFORM__WINDOWS -D__PLATFORM__DOS
run-time error R6009
- not enough space for environment
* config/global.cf
! Switched to use HB_FLAGSEXTRA for __PLATFORM__ macros instead
of cumulating HB_USER_PRGFLAGS. It didn't work in linux/watcom
builds from win hosts. This way also HB_HOST_FLAG_ isn't needed.
* config/wce/global.cf
- Deleted commented HB_FLAGSEXTRA line.
* source/hbpcre/_hbconf.h
* Minor formatting.
* harbour/config/global.cf
! yet another fix for exporting relative paths in HB_BIN_COMPILE
* harbour/config/wce/global.cf
! disabled HB_FLAGSEXTRA=-D__PLATFORM__WINCE
-D__PLATFORM__WINCE is already added in global.ch
* harbour/config/global.cf
! fixed HB_BIN_COMPILE exporting - it should be done only for
cross builds when it's fixed location
* harbour/harbour-win-spec
* harbour/harbour-wce-spec
* harbour/make_gnu_xmingw.sh
* harbour/make_gnu_xmingwce.sh
* updated for recent modifications
* harbour/config/win/watcom.cf
* added SYS NT to link options - it's default in Windows builds but
is necessary in cross builds
* harbour/config/global.cf
* small modification in platform checking order to reduce possible
interactions with some extended host information
+ added automatic HB_BIN_COMPILE setting based on binaries located
in PATH.
! export some variables to avoid repeated setting in recursive calls
what causes some bad side effects, i.e. multiple __PLATFORM__*
macro settings in cross builds what was breaking cross compilation
and also slow down the whole build process.
* config/instsh.cf
* config/dirsh.cf
* config/globsh.cf
% Grouped non-bash (batch) initializations to reduce redundancy.
* Changed 'md' command to 'mkdir' in OS/2 and DOS, just to be
in sync, mkdir is available in all shells.
+ Added links to good multiplatform batch docs.
* utils/hbmk2/hbmk2.prg
+ Added ability to start -gui targets on OS/2.
* include/hbextern.ch
* source/lang/Makefile
+ source/lang/msguados.c
+ Added Ukrainian language module for cp1125.
(borrowed from xhb, work of Pavel Tsarenko.)
I've made a few corrections compared to xhb:
- Using the same internal name as filename for
consistency with other language modules
(UADOS instead of UA1125).
- Fixed date format which must only contain YYYY, MM, DD
regardless of the CP/language used, since it's a picture mask.
- Formatting (semicolon, spaces, deleted embedded $Id$ not
needed with SVN)
- Added to hbextern.ch.
* source/lang/msguakoi.c
* source/lang/msgua866.c
* Two corrections to internal name.
(borrowed from xhb, work of Pavel Tsarenko.)
; QUESTION: I wonder why the texts are very much different in
Harbour and xhb. Someone familiar with Ukrainian
language and encodings should check this, only one
of them can be right and all CPs should be synced
with each other the only thing being different is
the encoding.
* source/codepage/msguakoi.c
! Fixed one letter.
* source/codepage/cpuawin.c
* source/codepage/cpua1125.c
* source/codepage/cpua866.c
* source/codepage/cpuakoi.c
* Added "CYRILLIC LETTER GHE WITH UPTURN" letter.
(borrowed from xhb, work of Pavel Tsarenko.)