Unnecessary variables generated by makecint

Dear CINT experts,

I recently used makecint to import libnova, a C-based astronomical library, into CINT. The process wasn’t too painful, but I found that makecint was inserting several apparently spurious link statements into the output makefile, and I had to remove them by hand to complete the build. Specifically, the problematic output generated by makecint was

CINT = $(shell which cint) CINTSYSDIRU = $(dir $(CINT)) CINTSYSDIRW= $(shell echo $(CINTSYSDIRU) ) CINTLIB = $(CINTSYSDIRU)/libcint.so # Note: suffix is system-specific...

The library libcint.[so|dll|dylib…] does not exist regardless of the system one builds on (I myself tried darwin and debian), and I couldn’t remove these lines using makecint’s various command line options. Perhaps they are holdovers from older versions of ROOT. This made me wonder if anyone is keeping makecint up-to-date, because other than this minor problem, I found it convenient and easy to use. Makecint did a good job invoking the system-specific compiler flags (and various arcane preprocessor macros) that I would have to remember myself when using rootcint.


makecint has been implement to work in CINT standalone environment and has to been updated to work in the ROOT enviroment (the main different is that the cint library is either $(CINTSYSDIRU)/libcint.so or $(ROOTSYS)/lib/libCint.so).

In the ROOT environment this is (somewhat :slight_smile: ) superseded by ACLiC (which does " a good job invoking the system-specific compiler flags" :slight_smile: ).