[liblouis-liblouisxml] SCons [was: stable version of liblouis query]

  • From: James Teh <jamie@xxxxxxxxxxxx>
  • To: liblouis/liblouisxml mailing list <liblouis-liblouisxml@xxxxxxxxxxxxx>
  • Date: Wed, 01 Feb 2012 20:30:16 +1000

Resending to the list, as I accidentally sent to Christian privately.

On 31/01/2012 8:33 PM, Christian Egli wrote:
NVDA now builds liblouis itself using SCons.
I'd be very interested in seeing this. I've been thinking about using
CMake to unify the build across platforms.
It's integrated with NVDA's own build process, so it isn't standalone. However, it shouldn't be too difficult to make it standalone. It is already written in such a way that it will build on different platforms without tweaking. Note that it doesn't currently build the command line tools, tests or documentation. The latter is an area I don't know much about, as I've never had to deal with texinfo in Windows.

You can see the NVDA liblouis sconscript here:
http://www.nvda-project.org/browser/main/nvdaHelper/liblouis/sconscript
In short, it does the following:
* Extracts the version number from configure.ac;
* Causes this version number to be passed as a PACKAGE_VERSION define when building source files;
* Causes a UNICODE_BITS define to be passed when building source files;
* Creates liblouis.h from liblouis.h.in, replacing @WIDECHAR_TYPE@ with unsigned short int;
* Builds the liblouis shared library using a list of source files;
* Installs the lib into a designated place;
* Creates __init__.py from __init__.py.in, replacing ###LIBLOUIS_SONAME### with the name of the lib just built;
* Installs the tables to a designated place.
Some of this could be avoided if the whole process was done with scons. For example, the package version could be defined in sconstruct and the WIDECHAR_TYPE define could be passed to the compiler without the need for liblouis.h.in.

Jamie

--
James Teh
Director, NV Access Limited
Email: jamie@xxxxxxxxxxxx
Web site: http://www.nvaccess.org/
Phone: +61 7 5667 8372
For a description of the software, to download it and links to
project pages go to http://www.abilitiessoft.com

Other related posts:

  • » [liblouis-liblouisxml] SCons [was: stable version of liblouis query] - James Teh