my musings 

Facebook Twitter LinkedIn YouTube E-mail RSS
formats

mcommon library

I just pushed some updates to github which I thought I’d explain here a bit. For most of my personal project I use autotools as my build system. I hate repeating code and as I learn new things in autotools I’d really like to update all my project with the new functionality I’ve learned about. To do this a while back I made a common library project on github. This project contains two parts. First in src you will find a bunch of really commonly used code like the publisher subscriber model. This compiles into a shared object file that can be linked against. Next in the templates folder you will find different autotools files. These can be symbolic linked or included so I don’t have to redo them each time. If you look at my mfit project you will see examples of this. For instance in my configure.ac file I do:

m4_include([mcommon/templates/configure.m4])
m4_include([mcommon/templates/configure_cpp.m4])

And in my object/Makefile.am I do:

include ../mcommon/templates/object/Makefile.am

And my bootstrap file is a symbolic link:

ln -s mcommon/templates/bootstrap

While you are looking at that checkout my mfit project. Its a calculator program I made which takes an xml file with health statistics about yourself and runs a bunch of formulas on them such as BMI.

Leave a Reply

Your email address will not be published. Required fields are marked *