diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index cce45d1..66023d1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,7 +9,7 @@ jobs: - uses: actions/checkout@v2 - name: Setup run: | - sudo apt-get install -y libgnutls28-dev g++ libbobcat-dev libboost-dev flex libfl-dev + sudo apt-get install -y libgnutls28-dev g++ libboost-dev flex libfl-dev cmake . - name: Build run: cmake --build . --config Release diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2c5cced..e12b80f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -12,7 +12,7 @@ jobs: - uses: actions/checkout@v1 - name: Setup run: | - sudo apt-get install -y libgnutls28-dev g++ libbobcat-dev libboost-dev flex libfl-dev pandoc + sudo apt-get install -y libgnutls28-dev g++ libboost-dev flex libfl-dev pandoc cmake . - name: Build run: cmake --build . --config Release diff --git a/.gitignore b/.gitignore index 2d31d72..7ac46d2 100644 --- a/.gitignore +++ b/.gitignore @@ -16,4 +16,5 @@ /ccbuild *.gch /tmp -gmon.out \ No newline at end of file +gmon.out +/.vscode \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 9bc6932..c383274 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ FLEX_TARGET(SourceScanner "src/sourceScanner/lexer" "src/sourceScanner/yylex.cc string(SUBSTRING ${FLEX_VERSION} 0 1 FLEX_VERSION_MAJOR) string(SUBSTRING ${FLEX_VERSION} 2 1 FLEX_VERSION_MINOR) -add_definitions(-DVERSION="2.0.9-3-gda70a0d" -DFLEX_VERSION_MAJOR=${FLEX_VERSION_MAJOR} -DFLEX_VERSION_MINOR=${FLEX_VERSION_MINOR}) +add_definitions(-DVERSION="2.0.10-3-g27f7a71" -DFLEX_VERSION_MAJOR=${FLEX_VERSION_MAJOR} -DFLEX_VERSION_MINOR=${FLEX_VERSION_MINOR}) link_libraries(gomp gnutls) add_definitions(-fopenmp) add_executable(ccbuild src/ccbuild.cc src/MD5Info/statics.cc src/MD5Info/save.cc src/MD5Info/old.cc src/MD5Info/load.cc src/MD5Info/hashFilenameFor.cc src/MD5Info/getInstance.cc src/MD5Info/destroy.cc src/MD5Info/contentHash.cc src/MD5Info/MD5Info.cc src/options/statics.cc src/system/username.cc src/system/uname.cc src/system/trimmed.cc src/system/trim.cc src/system/system.cc src/system/statics.cc src/system/sleep.cc src/system/resolveTest.cc src/system/projectName.cc src/system/parseArguments.cc src/system/mkdtemp.cc src/system/md5.cc src/system/makefileForAll.cc src/system/makefileFor.cc src/system/localSourcesInto.cc src/system/lib.cc src/system/inspect.cc src/system/icmake.cc src/system/exit.cc src/system/dotgraphForAll.cc src/system/dotgraphFor.cc src/system/distclean.cc src/system/destroy.cc src/system/depsFor.cc src/system/collectTargets.cc src/system/clean.cc src/system/check.cc src/system/changeTo.cc src/system/buildAll.cc src/system/build.cc src/system/batchCompile.cc src/system/addArguments.cc src/system/aapForAll.cc src/system/aapFor.cc src/string/toUpper.cc src/string/replace.cc src/globallocks/statics.cc src/globals/statics.cc src/globals/indexoperator.cc src/globals/globals.cc src/globals/getInstance.cc src/globals/destroy.cc src/fileSystem/touch.cc src/fileSystem/rmIfExists.cc src/fileSystem/rmDirectoryIfExists.cc src/fileSystem/rename.cc src/fileSystem/recursiveGlobDirectoriesInto.cc src/fileSystem/newer.cc src/fileSystem/modTime.cc src/fileSystem/isReadable.cc src/fileSystem/isDirectory.cc src/fileSystem/globSourceFilesInto.cc src/fileSystem/globInto.cc src/fileSystem/globFilesInto.cc src/fileSystem/globDirectoriesInto.cc src/fileSystem/fileName.cc src/fileSystem/fileExists.cc src/fileSystem/ensureDirectory.cc src/fileSystem/directoryName.cc src/fileSystem/cwd.cc src/fileSystem/cleanPath.cc src/fileSystem/baseName.cc src/fileSystem/absolutePath.cc src/problem/problem.cc src/resolver/statics.cc src/resolver/resolver.cc src/resolver/resolveInto.cc src/resolver/resolve.cc src/resolver/loadIfExists.cc src/resolver/getInstance.cc src/resolver/expand.cc src/resolver/destroy.cc src/compiler/statics.cc src/compiler/splitInto.cc src/compiler/precompileCommand.cc src/compiler/precompile.cc src/compiler/operator_add.cc src/compiler/linkCommand.cc src/compiler/link.cc src/compiler/libCommand.cc src/compiler/lib.cc src/compiler/countFirstLinkerArguments.cc src/compiler/compileCommand.cc src/compiler/compile.cc src/compiler/cls.cc src/compiler/ar.cc src/compiler/addObject.cc src/compiler/addArgument.cc src/sources/statics.cc src/sources/sources.cc src/sources/reloadStaleSources.cc src/sources/indexoperator.cc src/sources/getInstance.cc src/sources/erase.cc src/sources/destroy.cc src/source/upToDate.cc src/source/stale.cc src/source/source.cc src/source/setType.cc src/source/scan.cc src/source/reload.cc src/source/producesOutput.cc src/source/outputFilename.cc src/source/markAsDone.cc src/source/isObjectTarget.cc src/source/isLocalHeader.cc src/source/isLibTarget.cc src/source/isInternalHeader.cc src/source/isHeader.cc src/source/isBinTarget.cc src/source/hasSourceExtension.cc src/source/genDeps.cc src/source/directory.cc src/source/directDeps.cc src/source/dependencies.cc src/source/changed.cc src/source/buildObjectTarget.cc src/source/buildHeader.cc src/source/buildBinTarget.cc src/source/build.cc src/source/basenameWithoutExtension.cc src/sourceScanner/storeLocal.cc src/sourceScanner/storeIgnore.cc src/sourceScanner/storeGlobal.cc src/sourceScanner/sourceScanner.cc src/sourceScanner/includes.cc src/sourceScanner/hasMainFunction.cc src/sourceScanner/hasDefine.cc src/arguments/values.cc src/arguments/value.cc src/arguments/statics.cc src/arguments/outputOptions.cc src/arguments/initialize.cc src/arguments/getInstance.cc src/arguments/flagged.cc src/arguments/destroy.cc src/arguments/clear.cc src/arguments/arguments.cc ${FLEX_SourceScanner_OUTPUTS}) diff --git a/ChangeLog b/ChangeLog index 5228682..902c98d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2.0.11: + - Release fix: drop bobcat linking, thanks to Tony Mancill for noticing! + - Spell check run + +2.0.10: + - Upgrade cmake and C++ requirements + 2.0.9: - Refresh build dependencies and upgrade to C++17 @@ -104,7 +111,7 @@ 1.4.1: - Bugfix: moved linker flags to behind the objects in accordance with - ( http://www.network-theory.co.uk/docs/gccintro/gccintro_18.html ) + ( http://www.network-theory.co.uk/docs/gccintro/gccintro_18.html ) 1.4.0: - The option -V has been added in support of --version. @@ -285,8 +292,8 @@ v0.3.5: - Added option to precompile all headers, not just internal headers. I noticed that precompiler headers is only faster when you don't use internal headers at all, otherwise it's not that handy. -! Behaviour change: precompile before any normal compilation. - (due to flattend build algorithm) +! Behavior change: precompile before any normal compilation. + (due to flattened build algorithm) - Small speed-up (in isReadable code). - The distclean command nolonger uses clean, so it should work without a working source tree again (which is the reason it's there). diff --git a/Doxyfile b/Doxyfile index db6e60f..1d521f0 100644 --- a/Doxyfile +++ b/Doxyfile @@ -1,6 +1,6 @@ # Doxyfile 1.4.1 PROJECT_NAME = ccbuild -PROJECT_NUMBER = v2.0.7-dirty +PROJECT_NUMBER = v2.0.11-dirty OUTPUT_DIRECTORY = doc CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English diff --git a/INSTALL.md b/INSTALL.md index f91a56c..5841655 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -10,7 +10,6 @@ Shortcut for other prefix: `cmake . && make DESTDIR=/tmp/prefix install` There is only one binary, so installation should be easy... 1) Install the dependences: - libbobcat 2.0 or higher (correct API of Process class) libgomp 1.0+ (OpenMP) libgnutls (for MD5 algorithm) libboost 1.37 or higher. @@ -18,12 +17,12 @@ There is only one binary, so installation should be easy... flex 2.5.31 or newer (for the source scanner) 2) - If you have absolutly no rights on the system, add a writable (for example ${HOME}/bin) to your path and run "sh localinstall.sh". + If you have absolutely no rights on the system, add a writable (for example ${HOME}/bin) to your path and run "sh localinstall.sh". This will use the first writeable PATH path as binary directory and install the configuration files to your home directory. - Don't forget to awnser "yes" to the final do-you-really-want-this + Don't forget to answer "yes" to the final do-you-really-want-this question. If you have some rights on the system and have cmake installed: diff --git a/MD5SUMS b/MD5SUMS index fd9527c..7e590dc 100644 --- a/MD5SUMS +++ b/MD5SUMS @@ -1,5 +1,5 @@ f1cbc85bea3f70d88362d7e7989a6074 src/ccbuild.cc -bad9bd0cafa0b1552f03b4ec3799783c src/misc/debug.hh +56c5c9d19e54f245dedd107c348c071b src/misc/debug.hh 48298fd9899a634a15644cbe1ac3a754 src/MD5Info/MD5Info.hh ca475bbd58f6c3096f945ccb5f307ec0 src/MD5Info/statics.cc 1aa3a0f0ddfc2c30d8d754da153efa45 src/MD5Info/MD5Info.ih @@ -7,7 +7,7 @@ ca475bbd58f6c3096f945ccb5f307ec0 src/MD5Info/statics.cc e7c16abc6d375d57fcc37c4ad26bdffd src/MD5Info/old.cc 9c61452501a27486e7a6a4980e57f699 src/MD5Info/load.cc e62e068190c0bb8bafad9766a51f0af8 src/MD5Info/hashFilenameFor.cc -dbc3bc50365748c58966356a74404b9f src/MD5Info/getInstance.cc +29cc6b639d350edf305d6a33f4fe33c0 src/MD5Info/getInstance.cc 25545ba799fc2e82700a2a27d69fd02c src/MD5Info/destroy.cc 4ce3f3ff3ce515edb639a70f3543f969 src/MD5Info/contentHash.cc 8f956c434ecafcd6d150b2de46ca43db src/MD5Info/MD5Info.cc @@ -19,13 +19,13 @@ ce89c4b489094be4b160c6c8a9e4d348 src/options/options.ih 247614c2fde0cd71cd17be63dfa1f912 src/openmp/lock/lock.hh e4d58a54b1f20a28a6cf92e4f1d1d919 src/system/system.hh 559e4a02724a0c6e8bcbec4950a53cef src/system/username.cc -85e4d9a1f4cdf08937ec7904c16ca8f5 src/system/system.ih -cfd0b439dd5b1bd7ce0fb235628ce203 src/system/uname.cc +501acbf903d88ba6d089883cc79da58b src/system/system.ih +50602da9e68f63ff2aa66ae34dea26ed src/system/uname.cc daa382bb5d172778b781d76cac1c6530 src/system/trimmed.cc 2c0bd5ee05c1333156639a1b632b0a76 src/system/trim.cc e2881d28af33cb2c5d7ebab639867cbb src/system/system.cc -e95c7e83a1febc484095460026c66579 src/system/statics.cc -1cda3cc84c91ba757074ce0949447511 src/system/sleep.cc +92cadc5ce02c4a2171adfd118128fdc8 src/system/statics.cc +197c051fff00b1c91b73f8f2e7b4da76 src/system/sleep.cc a5657ecb4ab3e0cb6009a9deded5d59c src/system/resolveTest.cc 5b3810b3ae044db68122bc8e417c4dba src/system/projectName.cc 7e5049ba5ead1d774cf056f16a4b1f29 src/system/parseArguments.cc @@ -33,24 +33,24 @@ a5657ecb4ab3e0cb6009a9deded5d59c src/system/resolveTest.cc e6a20f6c03b325d4e50798a5bb1ebb39 src/system/md5.cc 423958de81ef135d4bfeabe2be1fc20f src/system/makefileForAll.cc 78e61e88e045ef53c9581199885bb901 src/system/makefileFor.cc -5cbe0a8b8dfca8737d80592eac151ec3 src/system/localSourcesInto.cc -b23acf5b769cab0296f2040b73c5f223 src/system/lib.cc +ff1f31ae49ae710dbc8fca80f5dd2f99 src/system/localSourcesInto.cc +66d003cd7cf1c453349f382562edc8c3 src/system/lib.cc 383d4935d5eaf142d5e62609424a3343 src/system/inspect.cc bc4575ce620de7a210b3d56f664aa98c src/system/icmake.cc 27d11e24593d82f065859b9788e2bec7 src/system/exit.cc 5aced9790aecea17a993ca0d37e29ce0 src/system/dotgraphForAll.cc -412bae78ba236854a14b5cbf9ebf4b41 src/system/dotgraphFor.cc +deab801cfc8935680fcaf84501f9cbc7 src/system/dotgraphFor.cc df45ad3d380c99e66e6823da6f802b05 src/system/distclean.cc 70e73052c192f5951e2494eb5af20e87 src/system/destroy.cc a9d2c49cb25b7d0f4fdb519dbecf0746 src/system/depsFor.cc e439f47f5861b31a9507314fb73ccc5b src/system/collectTargets.cc -c2f16b259e004dbf03be0f0582b28a7f src/system/clean.cc +ae419e100c6282ac0b6aafe2a7f4dd0d src/system/clean.cc f5edc34f66e095cd07ce43bc3fb9117c src/system/check.cc 8dd4265e57cccca8cab18ec98d880671 src/system/changeTo.cc 5a3d6c9ea047164cfb4a78a5823ecf40 src/system/buildAll.cc -d290d37b8ec60263a3f88c7ac9fd4166 src/system/build.cc +7555d251a59648a285f7554cc45d74eb src/system/build.cc 04faba0ec8c959a9cc4d8a0124e4eb50 src/system/batchCompile.cc -03cd3ce187432d2d7717b6b482f2f493 src/system/addArguments.cc +1e88ab7f1ec3e298ae88d1aed095f071 src/system/addArguments.cc ac32c3800c90be06b63b98bc11250578 src/system/aapForAll.cc c3dd4230e2b1c3d4a6559abdccdc6c2b src/system/aapFor.cc f15d50cfc906257c7a3a9fbb2d8a418c src/posix/wordexp.h @@ -70,7 +70,7 @@ f7b66b7df9a03f9254d9fc0ed323f616 src/string/replace.cc 5ae08430dbe943e6fdb6ca7fabc481c5 src/globals/getInstance.cc ca004eb5484f2c82b0f71a4ab1ebf219 src/globals/destroy.cc 481557d1e916109926de405793b44099 src/fileSystem/fileSystem.hh -0a0def8c487933a94d1d2ce68367a3b3 src/fileSystem/touch.cc +8ad9daa62a5833a0848dbfbc59124a66 src/fileSystem/touch.cc 3e90537f883973248f8fa1f501ba50f0 src/fileSystem/fileSystem.ih 18ef36225ed842899eff7ef9db6da158 src/fileSystem/rmIfExists.cc 94b0b7b6a86507404eda68ccb01e7125 src/fileSystem/rmDirectoryIfExists.cc @@ -81,15 +81,15 @@ ff97562394ea7325e5726630b14a008e src/fileSystem/modTime.cc bedb729f3924d5b1e7af9aee298138ff src/fileSystem/isReadable.cc 917e9d0e23f22df8a39223cecf56079a src/fileSystem/isDirectory.cc 5194a9bbd525726860ba103a4348d067 src/fileSystem/globSourceFilesInto.cc -aae51ffa312bd8d20c2d9f49b99fd410 src/fileSystem/globInto.cc +b2e56c659e3992403356b7b70e2d4bba src/fileSystem/globInto.cc cb4f8bd78f3c8fef2b7a71e0f8a12e17 src/fileSystem/globFilesInto.cc -10025e1ad260eb42f8c8e3054d905872 src/fileSystem/globDirectoriesInto.cc +f5739dae05c218f5bebb805ac254b95a src/fileSystem/globDirectoriesInto.cc b1fc4bca17297178c730393a36f6bcf2 src/fileSystem/fileName.cc 57d592e8acbc78d4a6f075706adeb4e1 src/fileSystem/fileExists.cc 7de99cb67c1e527515f76af14512cf05 src/fileSystem/ensureDirectory.cc af53b3b2dd794c292675ee83258913a0 src/fileSystem/directoryName.cc 6ce60ed712ccad60bd910bd28f260645 src/fileSystem/cwd.cc -28108a8e6a45157fa02a7bb41dac5cfa src/fileSystem/cleanPath.cc +86864e6dd3eaa80278ba144190c63f55 src/fileSystem/cleanPath.cc 7f232e37aff9639525f5599740af69ac src/fileSystem/baseName.cc 150e156b7021b9849d563210ef7f5a43 src/fileSystem/absolutePath.cc 49e82a507fe6bacf35f56d27f070e9d4 src/problem/problem.hh @@ -98,7 +98,7 @@ af53b3b2dd794c292675ee83258913a0 src/fileSystem/directoryName.cc e2e687f0975413aed601c0db8aad1b7f src/resolver/resolver.hh 6b8b2e3c7168f4e87fae3be896ef995b src/resolver/statics.cc c3f156e8a231b2b3050d7664d4967eb3 src/resolver/resolver.ih -6000a6aea4caca6ae1091f89e0ab6363 src/resolver/resolver.cc +e39910fcf4f660867cb6f66f8c3306ca src/resolver/resolver.cc 64d5b38d24a7ace09b3a6bedb794b37d src/resolver/resolveInto.cc 1a10cf005a95c35e864ef06447aa9980 src/resolver/resolve.cc d096845661a86dc043d8c9bcd2b8c3c8 src/resolver/loadIfExists.cc @@ -106,33 +106,33 @@ fd95e7e2a53b1b23c867060d2ac8224a src/resolver/getInstance.cc 6988aff4fa3fb61e2f204a9943748184 src/resolver/expand.cc c4270a38a1f62b708c1f5064cf6ed848 src/resolver/destroy.cc 8523d07f5d77c1c5819b711e84c655b6 src/compiler/compiler.hh -785b33c46269d2a49cdcd24ac10acaf6 src/compiler/statics.cc +cc9d52ea447cf1e4b5e03ec531e4a26a src/compiler/statics.cc c8e55f1bd214d445afd8516b5160e2e8 src/compiler/compiler.ih 3f859f006ae8b0835c4d45c3814a62e1 src/compiler/splitInto.cc ecdf2e31e74ef448b76c297a8571fd19 src/compiler/precompileCommand.cc -b3025e64538700310b8a633ba2de7dc1 src/compiler/precompile.cc -5e0335b242ab8f7c57ef2c1b85417aea src/compiler/operator_add.cc +de5170e358b17dd1eff73e440257b317 src/compiler/precompile.cc +bce735f97018e2447891511e4cdff6be src/compiler/operator_add.cc d023d810b371eda6a14fee209e637d74 src/compiler/linkCommand.cc 2a405b4644f955e8d76db56424a2ba84 src/compiler/link.cc 6fa0f65baac2cce7b2a3b6e2ace447b7 src/compiler/libCommand.cc 66fe78596249451efc3d9dd1dcbfbd3b src/compiler/lib.cc a0ee5b96502c1201b28417bf967db171 src/compiler/countFirstLinkerArguments.cc 3045eabe1cbe9cd661b8cfb2ec8e918c src/compiler/compileCommand.cc -33334a3413ce1d88c875bb3d7d8ee05f src/compiler/compile.cc +b971a70d3b64e4a64714cfd569b51891 src/compiler/compile.cc 94f60a260f2573c156d22edfbe926e99 src/compiler/cls.cc 260e5ccff300eb35031d44fc1a3c4724 src/compiler/ar.cc cbcfbb769b16ab3ce6e500a1f80f84d6 src/compiler/addObject.cc 8e1fed3b013c160b179b7e5605df50e3 src/compiler/addArgument.cc ded02db27879081f31e517ec89c534c7 src/sources/sources.hh -963589b58b2708e7fbc425cd83c81654 src/sources/statics.cc +4ead28407efb05a46d3b2978a941bfde src/sources/statics.cc 9c51cf66d64142534dcac8cb0d438bbb src/sources/sources.ih 36684d05d545144757b824fb3ed9997a src/sources/sources.cc -4ee7a655de9917b97edc494208a52130 src/sources/reloadStaleSources.cc +3565e70904854cc29c57b9372a1eb9ba src/sources/reloadStaleSources.cc a4e315cdbe730a4c1a474ca342defd24 src/sources/indexoperator.cc 00ce055a004a91e98827090113d1cf1a src/sources/getInstance.cc 43eaf01ddd34db5944e0a18e05292ccb src/sources/erase.cc -24e13377c6cb15fda07fe374d35977a9 src/sources/destroy.cc -3bde57962a33ca09480fdc2cb747c507 src/source/source.hh +3f6379f720e982db6efd4e91f9b0ab0a src/sources/destroy.cc +4f67edbefe4197bc3ccb559e3cc4ce22 src/source/source.hh c80ce0d4bbc2ef2c2b7e786baeea8bc6 src/source/upToDate.cc 1145569c57544065de0cff245011d9c6 src/source/source.ih 1fb812d3ec03ecf83abe2f167eb802e7 src/source/stale.cc @@ -141,13 +141,13 @@ c80ce0d4bbc2ef2c2b7e786baeea8bc6 src/source/upToDate.cc cafdb113a084b16f39a036041bc1af65 src/source/scan.cc 6a21dd0bb39fc082bd4930982cde44d7 src/source/reload.cc 044c9671b4da212935d89d9f058c4264 src/source/producesOutput.cc -3d953f826b2305d4efc105e723cdc983 src/source/outputFilename.cc +919f0e513d70abc0e6b6baeca1f2412f src/source/outputFilename.cc 75bc9ddc123ff60a74e3e0d78ccebce0 src/source/markAsDone.cc 7fc9af55b84c6200658f8e96aa0ff3b6 src/source/isObjectTarget.cc 9e2dbc16c222da82d8d48d724820f50a src/source/isLocalHeader.cc 7833172576a732245bf12fbc60c45501 src/source/isLibTarget.cc ae96d64b7b5ca36929fabb2ca1659a59 src/source/isInternalHeader.cc -d6346d3598a6d869538dc2be698434c8 src/source/isHeader.cc +95d6ce5963636c37bdf0400def27118e src/source/isHeader.cc 36848699700bad42304d62460398dec3 src/source/isBinTarget.cc 39d36edc641bfb8d87806f18375aa9a6 src/source/hasSourceExtension.cc 246fc4554b5598790703fe5966eac9a2 src/source/genDeps.cc @@ -170,7 +170,7 @@ d733e91250a3b934c4c994040d02228c src/sourceScanner/sourceScanner.cc 3483405cf6855c00ae6ce027147de51a src/sourceScanner/hasMainFunction.cc b72f2bbec099824487a3d1950984d869 src/sourceScanner/hasDefine.cc 03299e5f1330144933d7c84b6a428f0d src/sourceScanner/lexer.h -c86cfea71fd58f96fe9d01a1aa01ab7f src/arguments/arguments.hh +20bde568a9674718c02e50a32da43dca src/arguments/arguments.hh b27e4bff072912270c1eecdd60d6fb97 src/arguments/values.cc eace8dff91459b3a6074ccc32bd213fe src/arguments/arguments.ih 8d37c42acad2509e7b398077de799c04 src/arguments/value.cc @@ -180,5 +180,5 @@ e7052d51a574b41da8347f4733433988 src/arguments/initialize.cc 3e44e6377379b965028e83ae94fe1eb2 src/arguments/getInstance.cc fec66eff88ea4fe4d33cd7f9f577fe68 src/arguments/flagged.cc 863c40291a7b47b137a52de534eaf068 src/arguments/destroy.cc -e662f212e0d434264f29c54bf462e9ba src/arguments/clear.cc -866ba645854eaf9b669c02f62cf0061a src/arguments/arguments.cc +3ea1c7f23b19acacf7e81ed0384b8209 src/arguments/clear.cc +0de3e02e62c7b44044a40962289895b4 src/arguments/arguments.cc diff --git a/README.md b/README.md index 72f91c4..08b01f2 100644 --- a/README.md +++ b/README.md @@ -75,5 +75,4 @@ Another option is using `cmake` which is used in the [Travis-CI build](https://t 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. + diff --git a/doc/ccbuild/ccbuild.sgml b/doc/ccbuild/ccbuild.sgml index de516a0..5444869 100644 --- a/doc/ccbuild/ccbuild.sgml +++ b/doc/ccbuild/ccbuild.sgml @@ -5,7 +5,7 @@ &ccb; - A strict developer's build utility <author>A. Bram Neijt - <version>2.0.9-3-gda70a0d + <version>2.0.10-3-g27f7a71 <abstract>This document is a general usage manual to &ccb;. It will introduce ways of using &ccb;. It will also explain &ccb;'s behaviour in more words then the manual does. The newest version of &ccb; can be found at the <url name="https://github.com/bneijt/ccbuild" id="https://github.com/bneijt/ccbuild"> diff --git a/src/MD5Info/getInstance.cc b/src/MD5Info/getInstance.cc index cf63b18..e27fc4c 100644 --- a/src/MD5Info/getInstance.cc +++ b/src/MD5Info/getInstance.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "MD5Info.ih" MD5Info &MD5Info::getInstance() { diff --git a/src/arguments/arguments.cc b/src/arguments/arguments.cc index 484fc33..1fa8188 100644 --- a/src/arguments/arguments.cc +++ b/src/arguments/arguments.cc @@ -118,7 +118,7 @@ Arguments::Arguments(Option const *options, int argc, char *argv[]) ++optionIndex; } - //Add empty element, superflourisch if newly allocated space contains zeros + //Add empty element, superfluous if newly allocated space contains zeros longOpts[nlongOpts].name = 0; longOpts[nlongOpts].has_arg = 0; longOpts[nlongOpts].flag = 0; diff --git a/src/arguments/arguments.hh b/src/arguments/arguments.hh index d1a1cd3..15c9c55 100644 --- a/src/arguments/arguments.hh +++ b/src/arguments/arguments.hh @@ -38,7 +38,7 @@ First initialize the singleton with options and the commandline arguments. Arguments can be tested using the functions flagged, value and rest. Options should be a 3xN array of character pointers, ending in {0,0,0}. Options are defined with: -{"flagges and long names, space seperated", "valuename, if any", "Help text explaning what the option is."} +{"flags and long names, space separated", "valuename, if any", "Help text explaning what the option is."} WARNING: Arguments only supports up to 39 long options currently! See the TODO in Arguments.cc @@ -103,13 +103,13 @@ class Arguments { std::string d_empty; ///<A non const empty string static Arguments *s_instance; ///<Pointer to the singleton instance - static OpenMP::Lock s_instanceLock; ///<Lock for autmoatic instantiation and destruction + static OpenMP::Lock s_instanceLock; ///<Lock for automatic instantiation and destruction public: - ///\brief A structure containing the defenition of a commandline option + ///\brief A structure containing the definition of a commandline option struct Option { - std::string flags; ///<All flags it can be called with, space seperated ("f force" will allow "-f" and "--force") + std::string flags; ///<All flags it can be called with, space separated ("f force" will allow "-f" and "--force") std::string value; ///<The value, if any, the argument of the option is called. "<value>" for required, "[value]" for optional. std::string helpText; ///< The help text, describing this option. This is used when generating the help output. }; diff --git a/src/arguments/clear.cc b/src/arguments/clear.cc index 2599d30..619d339 100644 --- a/src/arguments/clear.cc +++ b/src/arguments/clear.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "arguments.ih" void Arguments::clear() { diff --git a/src/ccResolutions b/src/ccResolutions index 015f85d..51c4f5e 100644 --- a/src/ccResolutions +++ b/src/ccResolutions @@ -21,7 +21,6 @@ stddef.h boost/circular_buffer.hpp boost/lexical_cast.hpp openssl/evp.h `pkg-config --libs --cflags openssl` -bobcat/process gnutls/crypto.h -lgnutls gnutls/gnutls.h -lgnutls boost/numeric/conversion/cast.hpp diff --git a/src/compiler/compile.cc b/src/compiler/compile.cc index 67a317b..283b45e 100644 --- a/src/compiler/compile.cc +++ b/src/compiler/compile.cc @@ -27,7 +27,7 @@ int Compiler::compile(std::string target, assert(target != outputFile); string command = compileCommand(target, outputFile); - //If possible fork this... if(Options::optino<unsigned>("numThreadsLeft") > 0) fork exit(system) + //If possible fork this... if(Options::option<unsigned>("numThreadsLeft") > 0) fork exit(system) int retValue = System::system(command); diff --git a/src/compiler/operator_add.cc b/src/compiler/operator_add.cc index c77b5bf..8687d51 100644 --- a/src/compiler/operator_add.cc +++ b/src/compiler/operator_add.cc @@ -16,8 +16,6 @@ */ //See GNU manual for options: http://gcc.gnu.org/onlinedocs/gcc/Link-Options.html#Link-Options - - #include "compiler.ih" Compiler const Compiler::operator+(Compiler const &rvalue) { //Adding two compilers will merge their options diff --git a/src/compiler/precompile.cc b/src/compiler/precompile.cc index 578cfef..6d964f5 100644 --- a/src/compiler/precompile.cc +++ b/src/compiler/precompile.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "compiler.ih" int Compiler::precompile(std::string target, diff --git a/src/compiler/statics.cc b/src/compiler/statics.cc index 315f518..3ae7527 100644 --- a/src/compiler/statics.cc +++ b/src/compiler/statics.cc @@ -14,7 +14,6 @@ You should have received a copy of the GNU General Public License along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - #include "compiler.ih" std::string const Compiler::s_highLightOff("\x1b\x5b\x30\x6d"); //\\e[0m diff --git a/src/fileSystem/cleanPath.cc b/src/fileSystem/cleanPath.cc index a56387d..ad7c189 100644 --- a/src/fileSystem/cleanPath.cc +++ b/src/fileSystem/cleanPath.cc @@ -60,7 +60,7 @@ std::string FileSystem::cleanPath(string const &filename) { clean = clean.substr(0, clean.length() -1); } - //Strip superflourous './' for local path + //Strip superfluous './' for local path if(clean[0] == '.' && clean[1] == '/') { clean = clean.substr(2); } diff --git a/src/fileSystem/globDirectoriesInto.cc b/src/fileSystem/globDirectoriesInto.cc index 9ffacd3..9e41e2c 100644 --- a/src/fileSystem/globDirectoriesInto.cc +++ b/src/fileSystem/globDirectoriesInto.cc @@ -35,8 +35,8 @@ void FileSystem::globDirectoriesInto(vector<string> *list, string const &pattern OpenMP::ScopedLock asdf(fsLock); glob_t globbuf; //Needs to be globfreed at the end - //Use glob to get canditates - //XXX GLOB_ONLYDIR doesn't seem to work well with simlinks + //Use glob to get candidates + //XXX GLOB_ONLYDIR doesn't seem to work well with symlinks if(sort) { ::glob(pattern.c_str(), GLOB_ONLYDIR | GLOB_TILDE, NULL, &globbuf); } else { diff --git a/src/fileSystem/globInto.cc b/src/fileSystem/globInto.cc index 0cc074c..ed49232 100644 --- a/src/fileSystem/globInto.cc +++ b/src/fileSystem/globInto.cc @@ -20,7 +20,7 @@ void FileSystem::globInto(vector<string> *list, string const &pattern, bool sort OpenMP::ScopedLock asdf(fsLock); glob_t globbuf; //Needs to be globfreed at the end - //Use glob to get canditates + //Use glob to get candidates if(sort) { ::glob(pattern.c_str(), GLOB_TILDE, NULL, &globbuf); } else { diff --git a/src/fileSystem/touch.cc b/src/fileSystem/touch.cc index a995733..f00b067 100644 --- a/src/fileSystem/touch.cc +++ b/src/fileSystem/touch.cc @@ -20,7 +20,7 @@ bool FileSystem::touch(std::string const &filename) { OpenMP::ScopedLock asdf(fsLock); ofstream file(filename.c_str(), ios::app); - bool succes = file.is_open(); + bool success = file.is_open(); file.close(); - return succes; + return success; } diff --git a/src/misc/debug.hh b/src/misc/debug.hh index 9c0371e..f143574 100644 --- a/src/misc/debug.hh +++ b/src/misc/debug.hh @@ -26,7 +26,7 @@ /// ///If DEBUGLEVEL is set to 1, Level1 debug info is printed. If DEBUGLEVEL is set to 2, all Level2 and lower are printed. etc. /// -///To set the debuglevel of a class, place \#define DEBUGLEVEL in the internal header file (in contrast to the header). This will keep multiple defenitions from occuring when compiling. +///To set the debuglevel of a class, place \#define DEBUGLEVEL in the internal header file (in contrast to the header). This will keep multiple definitions from occuring when compiling. /// ///The output generated is: "[Filename]:[Line number]: [information]\n" /// @@ -38,7 +38,7 @@ /// _debugLevel3("And thinking about running it" << i << " times."); ///\endcode -//No include guards, to keep the defenitions as much up to date as possible, due to the dependencie on DEBUGLEVEL. +//No include guards, to keep the definitions as much up to date as possible, due to the dependencie on DEBUGLEVEL. #ifdef NODEBUG #ifdef DEBUGLEVEL #undef DEBUGLEVEL diff --git a/src/resolver/resolver.cc b/src/resolver/resolver.cc index 01b7545..64e17ef 100644 --- a/src/resolver/resolver.cc +++ b/src/resolver/resolver.cc @@ -17,8 +17,6 @@ #include "resolver.ih" - - Resolver::Resolver() : d_staticLinks(), diff --git a/src/source/isHeader.cc b/src/source/isHeader.cc index 6edb540..a5a5a8e 100644 --- a/src/source/isHeader.cc +++ b/src/source/isHeader.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "source.ih" bool Source::isHeader() const { return isLocalHeader() || isInternalHeader(); diff --git a/src/source/outputFilename.cc b/src/source/outputFilename.cc index f709117..77d8693 100644 --- a/src/source/outputFilename.cc +++ b/src/source/outputFilename.cc @@ -19,7 +19,7 @@ std::string Source::outputFilename() const { if(isObjectTarget() || isBinTarget()) { - //Output into a seperate directory with path in filename + //Output into a separate directory with path in filename // OLD per directory output directory directory() + "/o/" + basename() + ".o"; String oname = FileSystem::absolutePath(directory()) +"/"+ FileSystem::baseName(d_filename) + ".o"; return Options::cacheRoot + "/" + oname.substr(1); diff --git a/src/source/source.hh b/src/source/source.hh index d3d6a1a..68dd87c 100644 --- a/src/source/source.hh +++ b/src/source/source.hh @@ -60,7 +60,7 @@ class Source { unsigned char d_update; ///< Do we need an update? 0=unknown, 1=true, 2=false; bool d_hasMainFunction; ///< Does this source have a main function - ///\brief Internallly used source type defenitions + ///\brief Internallly used source type definitions enum SourceType { Unknown, LocalHeader, diff --git a/src/sources/destroy.cc b/src/sources/destroy.cc index 297f5a9..da6abf6 100644 --- a/src/sources/destroy.cc +++ b/src/sources/destroy.cc @@ -22,7 +22,7 @@ void Sources::destroy() { if(s_instance) { delete s_instance; } else { - _debugLevel1("Already destoryed!!"); + _debugLevel1("Already destroyed!!"); } s_instance = 0; } diff --git a/src/sources/reloadStaleSources.cc b/src/sources/reloadStaleSources.cc index 75d8596..ef750e9 100644 --- a/src/sources/reloadStaleSources.cc +++ b/src/sources/reloadStaleSources.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "sources.ih" void Sources::reloadStaleSources() { diff --git a/src/sources/statics.cc b/src/sources/statics.cc index 82b7889..1d788bc 100644 --- a/src/sources/statics.cc +++ b/src/sources/statics.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "sources.ih" Sources *Sources::s_instance(0); ///<Static member of sources to keep the pointer to the singleton OpenMP::Lock Sources::s_instanceLock; ///<Instance pointer mutex diff --git a/src/system/addArguments.cc b/src/system/addArguments.cc index 950a2eb..c4757bc 100644 --- a/src/system/addArguments.cc +++ b/src/system/addArguments.cc @@ -40,7 +40,7 @@ bool System::addArguments(int &argc, char ** &argv) { return false; #else cerr << "ccbuild: Adding ccResolutions arguments.\n"; - _debugLevel1("ccbuild: Arugment line: '" << confLine << "'"); + _debugLevel1("ccbuild: Argument line: '" << confLine << "'"); wordexp_t p; diff --git a/src/system/build.cc b/src/system/build.cc index 094d9d7..0d031da 100644 --- a/src/system/build.cc +++ b/src/system/build.cc @@ -67,7 +67,7 @@ void System::build(Source *source, Compiler &cc) { srcList.erase(last, srcList.end());//TODO do a real check for memory leaks on this, but I think Sources will track this. srcList.push_back(source);//Add the root binTarget again - //Seperate sources into lists + //Separate sources into lists __foreach(src, srcList) { if((*src)->isObjectTarget()) { objectTargets.push_back(*src); diff --git a/src/system/clean.cc b/src/system/clean.cc index 44a36bb..bfd419c 100644 --- a/src/system/clean.cc +++ b/src/system/clean.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "system.ih" void System::clean() { diff --git a/src/system/dotgraphFor.cc b/src/system/dotgraphFor.cc index a076e86..deae066 100644 --- a/src/system/dotgraphFor.cc +++ b/src/system/dotgraphFor.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "system.ih" void System::dotgraphFor(Source *target, ostream &str) { diff --git a/src/system/lib.cc b/src/system/lib.cc index fb7fb8e..25d6533 100644 --- a/src/system/lib.cc +++ b/src/system/lib.cc @@ -69,7 +69,7 @@ int System::lib(std::string const &version, Source *source) { srcList.erase(last, srcList.end());//TODO do a real check for memory leaks on this, but I think Sources will track this. - //Seperate sources into lists + //Separate sources into lists __foreach(src, srcList) { if((*src)->isObjectTarget()) { objectTargets.push_back(*src); @@ -159,7 +159,7 @@ int System::lib(std::string const &version, Source *source) { //Test whether linking is needed needLink = (numNeedLink > 0 ? true : needLink); - //Acuumulate the compilers + //Accumulate the compilers cc = accumulate(compilers.begin(), compilers.end(), cc); }//encaps iter diff --git a/src/system/localSourcesInto.cc b/src/system/localSourcesInto.cc index 4dcbeb8..37b9626 100644 --- a/src/system/localSourcesInto.cc +++ b/src/system/localSourcesInto.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "system.ih" void System::localSourcesInto(vector<Source *> &list) { diff --git a/src/system/sleep.cc b/src/system/sleep.cc index 7be6731..4a27171 100644 --- a/src/system/sleep.cc +++ b/src/system/sleep.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "system.ih" //This function is only here to keep ccbuild header list smaller unsigned System::sleep(unsigned const seconds) { diff --git a/src/system/statics.cc b/src/system/statics.cc index 06f314c..387692b 100644 --- a/src/system/statics.cc +++ b/src/system/statics.cc @@ -15,11 +15,6 @@ along with ccbuild. If not, see <http://www.gnu.org/licenses/>. */ - - - - - #include "system.ih" bool System::forceLink(false); diff --git a/src/system/system.ih b/src/system/system.ih index 4046c44..56bdd6f 100644 --- a/src/system/system.ih +++ b/src/system/system.ih @@ -39,7 +39,6 @@ #include <iterator> #include <unistd.h> #include <cstring> -#include <bobcat/process> #include <cstdlib> #include <omp.h> #include <numeric> diff --git a/src/system/uname.cc b/src/system/uname.cc index 5bc9f65..cfa6467 100644 --- a/src/system/uname.cc +++ b/src/system/uname.cc @@ -42,7 +42,7 @@ std::string System::uname(char const field) { rvalue = sysinfo.sysname; break; default: - throw Problem(Problem::Unable, "Not implemented field requisted from uname."); + throw Problem(Problem::Unable, "Not implemented field requested from uname."); } } return rvalue;