public
Description: C++ source scanning build utility
Homepage: http://logfish.net/pr/ccbuild/
Clone URL: git://github.com/bneijt/ccbuild.git
name age message
file AUTHORS Fri Jul 21 06:22:22 -0700 2006 Initial commit git-svn-id: https://ccbuild.svn... [bneijt]
file COPYING Fri Jul 21 06:22:22 -0700 2006 Initial commit git-svn-id: https://ccbuild.svn... [bneijt]
file ChangeLog Tue Oct 27 13:33:07 -0700 2009 Bugfix: possible segfault in library build - F... [bneijt]
file Doxyfile Fri Feb 13 09:47:43 -0800 2009 Fixed uname function git-svn-id: https://ccb... [bneijt]
file INSTALL Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file MD5SUMS Wed Nov 11 16:32:09 -0800 2009 Bugfix: complete all OpenMP for loops - Make s... [bneijt]
file Makefile.am Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file Makefile.ccbuild Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file Makefile.human Fri May 11 10:58:33 -0700 2007 Autotools installation scripts git-svn-id: htt... [bneijt]
file Makefile.in Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file NEWS Mon Oct 26 15:25:24 -0700 2009 Build system update - Update of build system, ... [bneijt]
file README Sat Oct 24 08:25:46 -0700 2009 Autotools update [bneijt]
file TODO Thu Oct 22 14:16:38 -0700 2009 Bugfix: content hashing of dependencies - Bugf... [bneijt]
file aclocal.m4 Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file bootstrap Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file ccbuild.aap Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file configure Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file configure.in Wed Nov 04 03:46:55 -0800 2009 Added BOOST to configure script [bneijt]
file depcomp Thu Oct 22 15:25:08 -0700 2009 Bugfix: add missing with copy instead of link [bneijt]
directory doc/ Tue Oct 27 08:59:57 -0700 2009 Bugfix: new icmake CLASSES format - Behaviour ... [bneijt]
file install-sh Thu Oct 22 15:25:08 -0700 2009 Bugfix: add missing with copy instead of link [bneijt]
file localinstall.sh Fri May 11 10:58:33 -0700 2007 Autotools installation scripts git-svn-id: htt... [bneijt]
file main.aap Fri Jul 21 06:22:22 -0700 2006 Initial commit git-svn-id: https://ccbuild.svn... [bneijt]
file missing Thu Oct 22 15:25:08 -0700 2009 Bugfix: add missing with copy instead of link [bneijt]
file package.sh Tue Oct 27 03:41:56 -0700 2009 Bugfix: double object metion in generated makef... [bneijt]
directory src/ Wed Nov 11 16:32:09 -0800 2009 Bugfix: complete all OpenMP for loops - Make s... [bneijt]
directory test/ Wed Oct 21 05:44:40 -0700 2009 Added container_const test file [bneijt]
directory tools/ Mon Oct 26 15:25:24 -0700 2009 Build system update - Update of build system, ... [bneijt]
README
  ##############################################
                   ccbuild
        A strict developer's build utility
        
      by A. Bram Neijt <bneijt@gmail.com>
  ##############################################

See INSTALL for installation instructions.

Thank you for downloading ccbuild!


=== Documentation
All documentation can be found in the doc directory. If you want to hack ccbuild, don't forget to run doxygen first.
Although the manual is currently not installed, a pre-compiled version can be found here: doc/debiandoc/ccbuild.1
You can also use the online versions of these documents via the homepage, most easily found using 
  http://www.logfish.net/pr/ccbuild/


=== Program usage

The program is meant to be run in the same directory as your main program resides.
For ccbuild self, this is the src directory.
The default behaviour of ccbuild is to find any sourcefile containing an "int main" function and start compiling it.

If the manual is not installed, use: man ./doc/debiandoc/ccbuild.1

see ccbuild -h for more information....
For more, and current, information: see http://www.logfish.net/pr/ccbuild/


=== Directories
./src     The main source tree of ccbuild
./doc     Documentation
./tools   Currently contains only a one-liner to run dot on .dot files.
./test    A collection of class testing programs, not really usefull.

== Examples of use
* Compile for debugging and development: ccbuild
* When recompiling for benchmark (force recompile, use -O3): 
       ccbuild -f --args -O3
* Generate a Makefile for a friend developer, who hasn't got ccbuild: ccbuild makefile > Makefile
* Look at the dependencies for you program(s): ccbuild deps
* Graph the dependencies: ccbuild dot; dotty *.dot
* Clean up the generated .o files for all local programs: ccbuild clean
* Remove all 'o' directories and .gch files, before making a backup or release: 
        ccbuild distclean

== DON'T DO THIS WHEN USING CCBUILD
These are very obvious, but just to overcome any problems that might occur.

The following is a list of things you shouldn't do when using ccbuild:
* Place important documents or sources in a directory called "o" within your
  source tree. This might be removed when calling "ccbuild distclean".
* Don't mix extensions for files with the same basename. So don't place
  a file called "main.cc" in the same directory as "main.cpp" because the
  objects in the o directory won't be seperated.
* Don't expect any warrenty of any kind (read the license).

== Hacking the code, possible start-up problems
- Flex scanner must be generated, use:
    rm src/SourceScanner/yylex.cc; make -f Makefile.human src/SourceScanner/yylex.cc
  Use this if the compiler complains about something with SourceScanner
- If the compiler complains about FFB::Process constructor called incorrectly,
  make sure you have libbobcat 2.02.03 or higher.