.. image:: https://travis-ci.org/Zomojo/compiletools.svg?branch=master
:target: https://travis-ci.org/Zomojo/compiletools
============
compiletools
============
--------------------------------------------------------
C/C++ build tools that requires almost no configuration.
--------------------------------------------------------
:Author: drgeoffathome@gmail.com
:Date: 2016-08-09
:Copyright: Copyright (C) 2011-2016 Zomojo Pty Ltd
:Version: 4.1.98
:Manual section: 1
:Manual group: developers
SYNOPSIS
========
ct-* [compilation args] [filename.cpp] [--variant=<VARIANT>]
DESCRIPTION
===========
The various ct-* tools exist to build C/C++ executables with almost no
configuration. For example, to build a C or C++ program, type ::
ct-cake --auto
which will try to determine the correct source files to generate executables
from and also determine the tests to build and run.
A variant is a configuration file that specifies various configurable settings
like the compiler and compiler flags. Common variants are "debug" and "release".
Options are parsed using python-configargparse. This means they can be passed
in on the command line, as environment variables or in config files.
Command-line values override environment variables which override config file
values which override defaults. Note that the environment variables are
captilized. That is, a command line option of --magic=cpp is the equivalent of
an environment variable MAGIC=cpp.
If the option itself starts with a hypen then configargparse can fail to parse
it as you intended. For example, on many platforms, ::
--append-CXXFLAGS=-march=skylake
will fail. To work around this, compiletools postprocesses the options to
understand quotes. For example, ::
--append-CXXFLAGS="-march=skylake"
will work on all platforms. Note however that many shells (e.g., bash) will strip
quotes so you need to escape the quotes or single quote stop the shell preprocessing.
For example, ::
--append-CXXFLAGS=\\"-march=skylake\\"
or
--append-CXXFLAGS='"-march=skylake"'
Other notable tools are ::
* ct-headertree: provides information about structure of the include files
* ct-filelist: provides the list of files needed to be included in a tarball (e.g. for packaging)
SEE ALSO
========
* ct-build
* ct-build-dynamic-library
* ct-build-static-library
* ct-cache
* ct-cache-clean
* ct-cake
* ct-cmakelists
* ct-commandline
* ct-config
* ct-cppdeps
* ct-create-cmakelists
* ct-create-makefile
* ct-filelist
* ct-findtargets
* ct-gitroot
* ct-headertree
* ct-jobs
* ct-list-variants
* ct-magicflags
Raw data
{
"_id": null,
"home_page": "http://zomojo.github.io/compiletools/",
"name": "compiletools",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "c++ make development",
"author": "Zomojo Pty Ltd",
"author_email": "drgeoffathome@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/85/ef/0795d23a0ade92fb3da2cdabf94e76642ee9066652ba8b87cbca5b5c3794/compiletools-4.1.98.tar.gz",
"platform": null,
"description": ".. image:: https://travis-ci.org/Zomojo/compiletools.svg?branch=master\n :target: https://travis-ci.org/Zomojo/compiletools\n\n============\ncompiletools\n============\n\n--------------------------------------------------------\nC/C++ build tools that requires almost no configuration.\n--------------------------------------------------------\n\n:Author: drgeoffathome@gmail.com\n:Date: 2016-08-09\n:Copyright: Copyright (C) 2011-2016 Zomojo Pty Ltd\n:Version: 4.1.98\n:Manual section: 1\n:Manual group: developers\n\nSYNOPSIS\n========\n ct-* [compilation args] [filename.cpp] [--variant=<VARIANT>]\n\nDESCRIPTION\n===========\nThe various ct-* tools exist to build C/C++ executables with almost no \nconfiguration. For example, to build a C or C++ program, type ::\n\n ct-cake --auto\n\nwhich will try to determine the correct source files to generate executables\nfrom and also determine the tests to build and run.\n\nA variant is a configuration file that specifies various configurable settings\nlike the compiler and compiler flags. Common variants are \"debug\" and \"release\".\n\nOptions are parsed using python-configargparse. This means they can be passed\nin on the command line, as environment variables or in config files.\nCommand-line values override environment variables which override config file \nvalues which override defaults. Note that the environment variables are \ncaptilized. That is, a command line option of --magic=cpp is the equivalent of \nan environment variable MAGIC=cpp.\n\nIf the option itself starts with a hypen then configargparse can fail to parse \nit as you intended. For example, on many platforms, :: \n\n --append-CXXFLAGS=-march=skylake\n\nwill fail. To work around this, compiletools postprocesses the options to \nunderstand quotes. For example, :: \n\n --append-CXXFLAGS=\"-march=skylake\" \n\nwill work on all platforms. Note however that many shells (e.g., bash) will strip \nquotes so you need to escape the quotes or single quote stop the shell preprocessing. \nFor example, ::\n\n --append-CXXFLAGS=\\\\\"-march=skylake\\\\\" \n or \n --append-CXXFLAGS='\"-march=skylake\"'\n\nOther notable tools are ::\n\n * ct-headertree: provides information about structure of the include files\n * ct-filelist: provides the list of files needed to be included in a tarball (e.g. for packaging)\n\nSEE ALSO\n========\n* ct-build\n* ct-build-dynamic-library\n* ct-build-static-library\n* ct-cache\n* ct-cache-clean\n* ct-cake\n* ct-cmakelists\n* ct-commandline\n* ct-config\n* ct-cppdeps\n* ct-create-cmakelists\n* ct-create-makefile\n* ct-filelist\n* ct-findtargets\n* ct-gitroot\n* ct-headertree\n* ct-jobs\n* ct-list-variants\n* ct-magicflags\n",
"bugtrack_url": null,
"license": "GPLv3+",
"summary": "Tools to make compiling C/C++ projects easy",
"version": "4.1.98",
"project_urls": {
"Download": "https://github.com/Zomojo/compiletools/archive/v4.1.98.tar.gz",
"Homepage": "http://zomojo.github.io/compiletools/"
},
"split_keywords": [
"c++",
"make",
"development"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "85ef0795d23a0ade92fb3da2cdabf94e76642ee9066652ba8b87cbca5b5c3794",
"md5": "f03bc79c506ef1a965b2326562ba4776",
"sha256": "8cf96e7d7bd893c4e46a2775a79a6cc4102157d00a6216b5d2b12982ca72bb6a"
},
"downloads": -1,
"filename": "compiletools-4.1.98.tar.gz",
"has_sig": false,
"md5_digest": "f03bc79c506ef1a965b2326562ba4776",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 97060,
"upload_time": "2024-11-04T10:14:00",
"upload_time_iso_8601": "2024-11-04T10:14:00.894063Z",
"url": "https://files.pythonhosted.org/packages/85/ef/0795d23a0ade92fb3da2cdabf94e76642ee9066652ba8b87cbca5b5c3794/compiletools-4.1.98.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-04 10:14:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Zomojo",
"github_project": "compiletools",
"travis_ci": true,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "compiletools"
}