Create a wrapper script that adds the mandatory cilly arguments for ParTools before calling it.
This allows to update them automatically for cillified projects when they change and reduce changes and mistakes in the Makefiles.
For the time being, which are the mandatory cilly flags and libraries that must be included in a Makefile?
Annotate and compile with:
CILLY_DONT_COMPILE_AFTER_MERGE=1 CILLY_DONT_LINK_AFTER_MERGE=1 cilly <normal GCC arguments> --save-temps --noWrap --noPrintLn --dooneRet --dosimplify --no-split-structs --dopartools rm <file_name>.i <file_name>.cil.i gcc <normal GCC arguments replacing *.c with *.cil.c and *.o with *.cio.o>
Link the annotated objects with:
gcc <normal linking arguments> -lavl -lxml2 -lpartools
Compilation example:
** normal GCC compilation:
gcc -O3 -Wall -c main.c -o main.o
** ParTools compilation:
CILLY_DONT_COMPILE_AFTER_MERGE=1 CILLY_DONT_LINK_AFTER_MERGE=1 cilly -O3 -Wall main.c --save-temps --noWrap --noPrintLn --dooneRet --dosimplify --no-split-structs --dopartools rm main.i main.cil.i gcc -O3 -Wall -c main.cil.c -o main.cil.o
Linking example:
** normal GCC linking:
gcc -o prog *.o -lm
** ParTools linking:
gcc -o prog.cil *.cil.o -lm -lavl -lxml2 -lpartools
Log in to post a comment.
For the time being, which are the mandatory cilly flags and libraries that must be included in a Makefile?
Annotate and compile with:
Link the annotated objects with:
Compilation example:
** normal GCC compilation:
** ParTools compilation:
Linking example:
** normal GCC linking:
** ParTools linking: