[liblouis-liblouisxml] Re: Problems found building with integration/msvc branch

  • From: Davy Kager <DavyKager@xxxxxxxxxx>
  • To: "'liblouis-liblouisxml@xxxxxxxxxxxxx'" <liblouis-liblouisxml@xxxxxxxxxxxxx>
  • Date: Tue, 6 Jun 2017 07:31:01 +0000

The liblouis-related issues should be fixed on master. I didn’t touch 
liblouisutdml, so that will likely be incompatible with 3.2.
The new headers are:

-          liblouis.h: external API

-          internal.h: internal API

Then there is util.c which contains common (non-translation) functions.

For 3.3 I would like to either consolidate findTable.h into internal.h, or else 
go the other direction and split internal.h into compileTranslationTable.h, 
findTable.h, etc.
Also for 3.3 the plan is to add an MSVC solution with proper projects. So any 
feedback on that is appreciated.
Finally for 3.3 the MinGW build could do with some touches.

Davy

Van: liblouis-liblouisxml-bounce@xxxxxxxxxxxxx 
[mailto:liblouis-liblouisxml-bounce@xxxxxxxxxxxxx] Namens Neil Soiffer
Verzonden: zondag 4 juni 2017 16:03
Aan: liblouis-liblouisxml@xxxxxxxxxxxxx
Onderwerp: [liblouis-liblouisxml] Problems found building with integration/msvc 
branch

With a checkout on 4/27, here are some problems/fixes I found to the 
integration/msvc branch. I'm not sure if they affect the main branch also.
Two fixes to compileTranslationTable.c:
Two type mismatches

static char ** (* tableResolver) (const char *tableList, const char *base) =
  &_lou_defaultTableResolver;
==>
static char ** (EXPORT_CALL* tableResolver) (const char *tableList, const char 
*base) =
  &_lou_defaultTableResolver;



lou_registerTableResolver (char ** (* resolver) (const char *tableList, const 
char *base))
==>
lou_registerTableResolver (char ** (EXPORT_CALL* resolver) (const char 
*tableList, const char *base))

..\liblouis\findTable.c(426): warning C4018: '<': signed/unsigned mismatch
==>
Use size_t instead of int for index variable:
  size_t k;

In liblouisutdml\readconfig.c, change getLastTableList to _lou_getLastTableList

I have a VS project file and filter file. Any interest in them?
Apparently, the main include file changed from louis.h to liblouis.h. This 
means that in the liblousUTDML project, it needs to change in
liblouisutdml/louisutdml.h
liblouisutdml\readconfig.c (actually, it can be deleted here because 
louisutdml.h in included)
Also, it looks like alot of things were moved to internal.h (see a few below). 
They probably shouldn't have that means internal.h needs to be included in 
louisutdml.h (which seems wrong).
ENDSEGMENT
TranslationTableHeader
...


make_makefile.c needs to specify /D_EXPORTING on the CCFLAGS line. If you 
don't, it defines
#define LIBLOUIS_API __declspec(dllimport)
This is right if it links against the DLL, but it links against the library 
(.lib). So it is wrong and generates LNK2001 and LNK2019 (using dllimport 
generates names like __imp__XXX which are used at load time to resolve to the 
XXX function, but libraries are statically linked).



DISCLAIMER:
De informatie verzonden met dit e-mail bericht is uitsluitend bestemd voor de 
geadresseerde. Indien u niet de beoogde geadresseerde bent, verzoeken wij u 
vriendelijk dit aan de afzender te melden (of via: 
info@xxxxxxxxxx<mailto:info@xxxxxxxxxx>) en het origineel en eventuele kopieën 
te verwijderen.

The information sent in this e-mail is solely intended for the individual or 
company to whom it is addressed. If you received this message in error, please 
notify the sender immediately (or mail to 
info@xxxxxxxxxx<mailto:info@xxxxxxxxxx>) and delete the original message and 
possible copies.

Other related posts: