Displaying compiling process in MAKE

by Forrest Sheng Bao http://fsbao.net

I need to play around with couple of logic stuffs this summer, SAT solvers, ASP solvers, ASP grounders, etc. So, I need to compile lotta codes this summer. Today, I found a cool stuff.

There is an ASP grounder called Gringo, a Spanish word used by Latin Americans to call {Crazy} Yankees (not Asian/African/Hispanic/Native Americans or Martian(from the Mars) Americans but Caucasian Americans) as we call Canadians "Canuck." - How do Canadians call Russians on the North side? Well, over the pole.

Their source code is packed with cmake scripts. So, when I compile it, it looks like this:
forrest@dophin:~/gringo-2.0.3-source/build/gringo/release$ make
Scanning dependencies of target gringo-lib_pch_dephelp
[ 1%] Building CXX object lib/gringo/CMakeFiles/gringo-lib_pch_dephelp.dir/gringo-lib_pch_dephelp.o
Linking CXX static library ../libgringo-lib_pch_dephelp.a
[ 1%] Built target gringo-lib_pch_dephelp
Scanning dependencies of target pch_Generate_gringo-lib
[ 1%] Generating gringo.h
[ 1%] Generating gringo.h.gch/gringo-lib_Release.h++
[ 4%] Built target pch_Generate_gringo-lib
Scanning dependencies of target gringo-lib
[ 6%] Building CXX object lib/gringo/CMakeFiles/gringo-lib.dir/src/avgaggregate.o
[ 7%] Building CXX object lib/gringo/CMakeFiles/gringo-lib.dir/src/statementchecker.o
[ 9%] Building CXX object lib/gringo/CMakeFiles/gringo-lib.dir/src/smodelsconverter.o
[ 10%] Building CXX object lib/gringo/CMakeFiles/gringo-lib.dir/src/output.o
and this at the end:
[ 90%] Building CXX object lib/gringo/CMakeFiles/gringo-lib.dir/generated/plainlparselexer.o
[ 92%] Building CXX object lib/gringo/CMakeFiles/gringo-lib.dir/generated/lparseconverter_impl.o
Linking CXX static library ../libgringo.a
[ 92%] Built target gringo-lib
Scanning dependencies of target gringo-app
[ 93%] Building CXX object app/CMakeFiles/gringo-app.dir/main.o
[ 95%] Building CXX object app/CMakeFiles/gringo-app.dir/options.o
/home/forrest/gringo-2.0.3-source/app/options.cpp: In function ‘bool::parseInt(const std::string&)’:
/home/forrest/gringo-2.0.3-source/app/options.cpp:172: warning: ignoring return value of ‘long int strtol(const char*, char**, int)’, declared with attribute warn_unused_result
[ 96%] Building CXX object app/CMakeFiles/gringo-app.dir/timer.o
[ 98%] Building CXX object app/CMakeFiles/gringo-app.dir/program_opts/program_options.o
[100%] Building CXX object app/CMakeFiles/gringo-app.dir/program_opts/value.o
Linking CXX executable ../bin/gringo
[100%] Built target gringo-app
I do not know how the process is shown. But it looks pretty cool. If you know how, please let me know.

No comments: