GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
CSMAKE(1) FreeBSD General Commands Manual CSMAKE(1)

csmake - CScout make

csmake [-T spy_directory] [-N rules_file] [make(1) options]

csmake is a wrapper around make and typical C compilation commands. When invoked instead of make on a clean (unbuilt) system, it will build the system in the same way as make. As a side-effect it will monitor the invocations of cc(1), gcc(1), clang(1), ar(1), ld(1), and mv(1) commands and record their environment and arguments. With those data it will generate a CScout project specification that can be used to process the project that was compiled. The project specification is saved into a file named make.cs. Moreover, a separate CScout .cs file is generated for each executable in cscout_projects directory.

To allow csmake to be used as a drop in replacement in build sequences that execute multiple make commands, you can create a /tmp/csmake-spy, which will be used to create rules for the superset of all make-generated executables.

csmake options can be passed through CSMAKEFLAGS environment variable.

-N rules_file
Run on an existing rules file.
-T spy_directory
Create a separate CScout .cs file for each real executable. Use spy_directory as spy directory, remember to clear it if you use it multiple times. Save the .cs files into cscout_projects in the current directory.

The following commands are often the only ones required to process a typical C project.

make clean
csmake
cscout make.cs

If you want to use csmake with another C compiler, prepend CC=compiler-name to the csmake invocation, as shown in the following example.

CC=x86_64-w64-gcc csmake

The following commands can be used to run csmake for a Debian package using dpkg-buildpackage.

rm -rf tmp_dir && mkdir -p tmp_dir
CSMAKEFLAGS='-T tmp_dir' MAKE=/usr/local/bin/csmake dpkg-buildpackage -b

cscout(1)

(C) Copyright 2006-2016 Diomidis Spinellis.
26 September 2019

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.