I did a simple test and could compile sqlrdd. I DO NOT test it, just compile the library.
The compile process can probably be streamlined, I REPEAT, IT IS JUST A PROOF OF CONCEPT
I installed mingw compiler from msys2 (installed msys2, updated, installed mingw-i686, installed bison . bison executable is in c:\msys64\usr\bin)
1. Download xharbour sources, unzip, copy sqlrdd directory in some other directory so that you have a pristine copy of the sources
2. cd in source directory
2bis. IMPORTANT: from the unzipped xHarbour source code, copy
hbcompat.ch from include directory to the source directory of sqlrdd, see the note at the end
3. set your environment to your harbour... as I said, I use mingw from msys2
3. set HB_BISONPATH=c:\msys64\usr\bin (it's not in my PATH, you may have it)
4. open sqlrdd.hbp and add a line to include contrib/xhb directory in the include search path, in my setup it is:
-Id:\cvs\harbour\contrib\xhb
5. open exprrelation.prg and change (I don't know why that like is not recognized by the pre-processor):
- if(::aIndex[i,10] like "^\w+$")
+ if(hb_regexLike( "^\w+$", ::aIndex[i,10] ) )
6. run hbmk2 -xhb sqlrdd.hbp
There will be errors, modify the lines like this sample (add :: in front of Super...)
-return Super:End()
+return ::Super:End()
6bis. repeat another 4 times since there are 5 files to be modified
7. the 6th time you run hbmk2. It should go ahead, call bison, list a lot of warnings that I didn't care at the moment and finally:
hbmk2: Creazione della libreria statica... libsqlrdd.a
Note:
You have4 to do step 2bis...
#translate ( <exp1> LIKE <exp2> ) => hb_regexLike( <exp2>, <exp1> )
in xharbour\include\
hbcompat.ch I have this line
#translate ( <exp1> LIKE <exp2> ) => ( HB_REGEXLIKE( (<exp2>), (<exp1>) ) )
With xHarbour version the code is compiled correctly, with harbour version it is not and I have no time and no knowledge to investigate the reason.
Have fun