[xiphos-devel] CMake port

dominique at corbex.org dominique at corbex.org
Sun May 13 13:52:20 MST 2018


Port to CMake initial commit
----------------------------
First I must thank people I was greatly inspired by:
- Daniel Pfeifer: CMake introduction and best practices
https://www.slideshare.net/DanielPfeifer1/cmake-48475415
- Manuel Binna: Effective Modern CMake
https://gist.github.com/mbinna/c61dbb39bca0e4fb7d1f73b0d66a4fd1
- Pablo Arias: It's Time To Do CMake Right
https://pabloariasal.github.io/2018/02/19/its-time-to-do-cmake-right/

I tried, in porting Xiphos build system from waf to CMake, to
- provide the same features and options than waf
- keep it simple (please, don't look in the mhelp dir..)
- document everything
- validate files (xml)
- do not brake the waf build


** Features

- The hassle to deal with scrollkeeper and omf files was not worth the effort,
so I switched the Help from Docbook to Mallard encoding.

- I had to slightly modify xiphos.appdata.xml, the current one doesn't validate.

- Windows Help Files are compiled with the chmcmd utility from FPC, the Free
Pascal Compiler


** Issues

- You'll need biblesync 2.0.1

- I sometimes encountered build failures, an error occured during the task of
validating mallard pages, due to a race condition. I think it's now fixed, but
if this error happens again, run: '$ make -j1' as a workaround.

- The PDF file looks ugly, the conversion tool (htmldoc) is not UTF-8 aware...

- The Windows© installer doesn't install fonts and do not display RELEASE-NOTES.
 I still have to figure out how to do this.

- The Windows Help files (.chm) need refinement.


** Final notes

- I regularly run Xiphos on Fedora 27 installed from a rpm built on a daily
basis with CMake.

- I also run Xiphos on Debian Stretch from deb packages made by 'make
packages'

- But I know next to nothing about Windows©, so I can't tell you if the
generated EXE files are Ok. All I know is that I was able to install
and run the 32bits version in a Windows 7 VM, then download and display
a Bible, Help files and a few other things. I only ran the 64bits in
Wine, doing more or less similar tasks. So the EXE files may still have
a programming glitch or bug or something corrupted. 

- See INSTALLcmake.md for building Xiphos with CMake.



Dom
-- 
dominique at corbex.org <dominique at corbex.org>



More information about the xiphos-devel mailing list