| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: icmake | Distribution: openSUSE Tumbleweed |
| Version: 13.05.01 | Vendor: openSUSE |
| Release: 1.1 | Build date: Wed Apr 1 11:23:31 2026 |
| Group: Development/Tools/Building | Build host: reproducible |
| Size: 1692347 | Source RPM: icmake-13.05.01-1.1.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://gitlab.com/fbb-git/icmake | |
| Summary: A program maintenance (make) utility using a C-like grammar | |
Icmake allows the programmer to use a program language (closely resembling the well-known C-programming language) to define the actions involved in (complex) program maintenance. For this, icmake offers various special operators as well as a set of support functions that have proven to be useful in program maintenance.
GPL-3.0-only
* Wed Apr 01 2026 Valentin Lefebvre <valentin.lefebvre@suse.com>
- Update to 13.05.01
* Fixed version 13.05.00's bobcat classes Signal and Arg accidentally
including <bobcat/exception> instead of "../exception/exception".
- Update to 13.05.00
* Repaired an error in /usr/bin/icmstart because of which it couldn't call
the icmstart.bim compiled icmake binary.
* The classes Arg and Signal in support/bobcat.tgz now uses the bobcat
6.11.00 implementation.
- Update to 13.04.02
* Following Tony Mancill's advice 'ag' is replaced by 'grep' as 'ag' is not
a standard tool.
* Repaired flaws in the ./install script, 'tar' is used instead of 'cp'.
- icmake is now independant of libbobcat
* Mon Oct 27 2025 Valentin Lefebvre <valentin.lefebvre@suse.com>
- Update to version 13.04.01:
* processed some gitlab merge request
* updated the man-pages
* icmake -s also shows the script name as argv[0]
* moved setTmp from scriptopts to stbase
* repaired optbase/optbase1.cc; icmake -c shows icm-comp usage
* icmake -t shows the script name in error messages
* updated icmstart.rc.yo
* scripts/icmstart.in optionally adds parser/scanner defines to icmconf
* the flaw in icmodmap was a bug, now fixed
* repaired a flaw in icmodmap
- upgrade to 13.03.00
* modmap: checked in modified files
* modmap: modified --quiet and no args/options handling
* modmap: when chdir fails the failing name is written to cerr
* modmap usage change: dropped -f, arg can also be - or a filename
* modmap: all Support members are static
* modmap: --mark fully operational
* modmap: dependent units are compiled with -m +
* modmap: initial cercular test and compilation after redesiging OK
* icmodmap: sources using modules are registered in ModData
* icmodmap: todo -m ++ and -m filename
* icmodmap: added class Options
- upgrade to 13.01.00
* repaired a bug in icmake/icmcomp/docompile.cc
* module directories can have subdirs for partitions
* simplified the icmodmap usage
* emsg when unknown modules remain -> no compilation
* repaired the regex recognizing names in scanner/lexer
* scanner/lexer NAME regex accepts names > 1 char.
* added --verbose output
* passed a basic test handling partitions
* demo using external module OK
* modmap compilation now handled by the class Compiler
* scanning sources now by class Scan, also added ModData
* activated the compile command
* ready to activate compilation
* reactivated option --clean
* wip handling circular dependencies
* 1st implementation of required modules inspection operational
* external modules are linked, not yet inspected
* next: inspecting unknown modules
* initial scan for modules OK
* Modules scans all source files
* last modifications before Modules reimplementation
* added modules ./connectexternal.cc and ./symlink.cc
* mdules/external uses recursive_directory_iterator
* raw implementation of modules/external
* added option --extern, to do: modules/external operational
* icmodmap: option --clean operational
* added modules/external.cc skeleton
* added option --clean to icmodmap
* fixed the bug in spch/process/spch.cc, ready for 13.00.03
* Repaired CLASSES file handling by icmake -S
Changed the handling of temp. files
Icmake -t's option supports keeping the compiled .bim file
- removed patch fixed upstream
[- fix-lib-path-for-builds-file.patch]
[- fix-spch-process.patch]
* Mon Oct 20 2025 Valentin Lefebvre <valentin.lefebvre@suse.com>
- Remove fixed patches
[- gcc-13-fix.patch]
[- reproducible.patch]
[- prevent-double-slash.patch]
- Fix build of 13.00.01
[+ fix-lib-path-for-builds-file.patch]
[+ fix-spch-process.patch]
- Use service file to get tarball source.
- upgrade to 13.00.01
* Manpages for Debian were updated.
- upgrade to 13.00.00
* The man-pages were updated and contain specific details about the
changes since version 12.03.00
* Option --all was added to icm-spch.
* Headers inspected by icmake --spch are not modified anymore.
* The program 'noifndef.cc', available in the icmake's source distribution
(sub-dir 'build2nd') can be used to remove '#ifnef SPCH_' sections from
projects' .ih files.
* 'icmake --source' compiles the icmake script to a temporary .bim file;
* The support program 'icmun' was renamed to 'icm-un'.
* The 'icmconf' script can use -o in its #define SPCH specification. All
(space character delimited) words following -o are passed to 'icm-spch' as
separate '-o word' options;
* When developing C++ programs the environment variable ICMAKE_CXXFLAGS
is no longer used. Instead the environment variable ICMAKE_CPPSTD is
used. Use this latter environment variable to define one point of
maintenance specifying the version of the bf(C++) standard used when
compiling sources.
* When using Debian (or a comparable distributions) the script 'rebuild' can
be used to rebuild icmake's binaries after installing 'libbobcat-dev',
resulting in a reduction of their sizes of about 40%.
* The 'icmake' program itself was redesigned.
- upgrade to 12.03.00
* #define IH is only required if #define SPCH or #define PRECOMP is
specified in the icmconf file.
- upgrade to 12.02.01
* /usr/share/icmake/icmconf defines IH, required by icmbuild
* /etc/icmake/icmstart.rc specifies usage.cc and version.cc with Pb, so
'icmstart -b ...' is recognized
- upgrade to 12.02.00
* Added the /usr/bin/icmodmap program + man-page
* Compilations use --std=c++26
- upgrade to 12.00.01
* Icmake is now completely independent from bobcat.
- upgrade to 12.00.00
* The icmake construction no longer depends on the availability of the
(possibly bootstrapped) bobcat library. Bootstrapping is no longer
required.
* The /usr/libexec/icmake/icm-spch support program recognizes
* When icmstart optionally installs a directory it also requests whether the
directory name should be added to the CLASSES file
* The icmake man-page received some cosmetic changes
- upgrade to 11.01.02
* Repaired a failing comparison between signed/unsigned values only
appearing in 32-bit architectures.
- upgrade to 11.01.01
* Repaired an issue when converting to 11.00.00 with 'icmake -c ...'
* For backward compatibility ICMAKE_CXXFLAGS is still recognized by
icmbuild and support programs.
- upgrade to 11.01.00
* The environment variable ICMAKE_CXXFLAGS was replaced by ICMAKE_CPPSTD
* Earlier FTBFS problems in a clean chroot environment were caused by not
having defined the ICMAKE_CXXFLAGS environment variable
* Internal redesign: all filesystem functions used by at least two functions
are now defined in support/tools
- upgrade to 11.00.00
* New major version supports using Single Pre-Compiled Headers and
multi-threaded compilation, significantly reducing the compilation time of
the source files of projects compared to situations where these facilities
are not used. The icmake and icmconf manuals were updated accordingly.
- upgrade to 10.06.01
* icm_bootstrap was slightly modified: when the man-pages are available in
the ./doc directory Yodl isn't called to create them. Pre-built man-pages
are only used when constructing the icmake_*.orig.tar.gz tar file, to allow
the debian package to be constructed w/o being dependent on Yodl, as that
would introduce a circular dependency.
- upgrade to 10.06.00
* Updated the QUICKINSTALL file and repaired bugs / improved the comment in
icm_prepare, icm_bootstrap and icm_install scripts.
* The CPPENVOPTS environment variable is no longer used. Instead use the
ICMAKE_CXXFLAGS environment variable (cf. the icmconf(7) man-page).
* The icm_prepare, icm_bootstrap, and icm_install scripts received a major
upgrade
- upgrade to 10.05.01
* Repaired typo in icmstript.yo
- upgrade to 10.05.00
* When compiling C++ programs the icmconf file by default specifies the
options
- Werror -Wall -O2
As before, additional options can be added to the CXXFLAGS specification
in the icmconf file, but it's also possible to define additional options
in the environment variable CPPENVOPTS (cf. the icmconf(7) man-page).
* This is the last entry in gitlab's 'master' branch. This version and
future versions will be committed to gitlab's 'main' branch.
- upgrade to 10.04.01
* Processed Tony Mancill's merge request to fix Matthias Klose's debian bug
report #1037691.
* Updated the C++ standard version in ./c++std to --std=c++23.
- upgrade to 10.04.00
* Replaced 'typedef' definitions by 'using' declarations
* Input file lists are now sorted (following a gitlab merge request by
Bernhard M. Wiedemann), resulting in icmake offering reproducible builds
(cf https://reproducible-builds.org/).
- upgrade to 10.03.03
* Updated the usr/share/icmake files: the parser/ and scanner/ files are
now more in line with the current versions of bisonc++ and flexc++
- upgrade to 10.03.02
* Added the 'bobcatbootstrap' script to perform an initial installation of
icmake when the bobcat library isn't yet available. See the
README.bobcatbootstrap file and/or the usage info at the top of the
'bobcatbootstrap' script
* The bootstrap/flags file now loads the standard specified in 'c++std'
- upgrade to 10.03.01
* Ready for libbobcat6
* Added 'c++std' defining the c++ standard to use for
compilation. Compilation commands also use -Werror
* Sat Jun 15 2024 Bernhard Wiedemann <bwiedemann@suse.com>
- Add reproducible.patch to make package build reproducible
* Tue Feb 28 2023 Martin Liška <mliska@suse.cz>
- Add gcc-13-fix.patch in order to fix the upstream issue:
https://gitlab.com/fbb-git/icmake/-/issues/5
* Mon Nov 21 2022 Andreas Schwab <schwab@suse.de>
- Build with %{optflags}
* Fri Oct 28 2022 Valentin Lefebvre <valentin.lefebvre@suse.com>
- Break the build cycle dependency with libbobcat
* Change build requires from libbobcat-devel to libbobcat-light-devel-static
* Wed Sep 28 2022 Valentin Lefebvre <valentin.lefebvre@suse.com>
- Adding build requries to libbobcat on specfile.
* Fri Aug 26 2022 Valentin Lefebvre <valentin.lefebvre@suse.com>
- upgrade to 10.03.00
* On little-engine architectures icmake 10.02.00 should not be used as it
only writes the least significant bytes of multi-byte values to its .bim
files. This error was repaired in version 10.03.00
- upgrade to 10.02.00
* Daniel Bungert noticed that icmake couldn't be used on big-endian
architectures (like the s390x emulator). The bug was caused by icmake
using little-endian number representations in its .bim files. Starting
this version little-endian number representations are still used in the
.bim files, but on big-endian acrchitectures numbers are converted to
little-endian representations before writing them to the .bim files and
converted to big-endian representations when reading numbers from .bim
files.
* A cosmetic flaw was fixed in the output of the icmake unassembler.
- upgrade to 10.01.00
* Simplified -t argument handling in icmake
* The icmake program (again) recognizes but ignores the -q option. Existing
icmake scripts specifying -q should not be processed by icmake
10.00.00. Icmake users are advised to remove -q options from their icmake
scripts.
* Calling icmake without action option results in an error.
- upgrade to 10.00.00
* Icmake and its support programs now converted to C++
* Added a new manpage: icmscript(7), describing the syntaxis, construction
and predefined support functions and other characteristics of icmake
scripts.
* Added new options --no-process (-N), --unassemble (-u), and --verbose (-V)
to icmake,
* Icmake's option --summary) (-F) has been discontinued.
* Added new options --no-version-check (-n) to icm-exec and icmun
* Added new option -P (no pre-processing) to --compile and --force
* The --source short option -i has been replaced by -s;
* The predefined functions printf and fprintf also support the << insertion
operator (comparable to C++'s std::ostream class).
* Changed the organization of the class-dependencies matrices shown by
'icmake -d' (icm_dep), simplifying visual inspection of circular
class-dependencies
* Fixed a flaw in handling precompiled headers in the std. icmbuild script
causing precompilation of modified headers at the second icmbuild run.
- new library file icmstart.bim comming from commit ecb0d3f1
[10.03.00.tar.bz2]
* Sat May 08 2021 Ferdinand Thiessen <rpm@fthiessen.de>
- Fixed SourceUrl
/etc/icmake /etc/icmake/icmstart.rc /usr/bin/icmake /usr/bin/icmbuild /usr/bin/icmodmap /usr/bin/icmstart /usr/lib64/icmake /usr/lib64/icmake/icm-comp /usr/lib64/icmake/icm-dep /usr/lib64/icmake/icm-exec /usr/lib64/icmake/icm-multicomp /usr/lib64/icmake/icm-pp /usr/lib64/icmake/icm-spch /usr/lib64/icmake/icm-un /usr/lib64/icmake/icmbuild /usr/lib64/icmake/icmstart.bim /usr/share/doc/packages/icmake /usr/share/doc/packages/icmake/README.rebuild /usr/share/doc/packages/icmake/build2nd /usr/share/doc/packages/icmake/build2nd/CLASSES.support /usr/share/doc/packages/icmake/build2nd/buildnoifndef /usr/share/doc/packages/icmake/build2nd/icmconf.programs /usr/share/doc/packages/icmake/build2nd/icmconf.support /usr/share/doc/packages/icmake/build2nd/libsupport /usr/share/doc/packages/icmake/build2nd/noifndef.cc /usr/share/doc/packages/icmake/changelog /usr/share/doc/packages/icmake/changelog.gz /usr/share/doc/packages/icmake/examples /usr/share/doc/packages/icmake/examples/7.00 /usr/share/doc/packages/icmake/examples/7.00/backtick.im /usr/share/doc/packages/icmake/examples/7.00/define.im /usr/share/doc/packages/icmake/examples/7.00/getenv.im /usr/share/doc/packages/icmake/examples/7.00/ifdef.im /usr/share/doc/packages/icmake/examples/7.00/index.im /usr/share/doc/packages/icmake/examples/7.00/strfind.im /usr/share/doc/packages/icmake/examples/7.00/strlwr.im /usr/share/doc/packages/icmake/examples/7.00/substr.im /usr/share/doc/packages/icmake/examples/8.00 /usr/share/doc/packages/icmake/examples/8.00/strformat.im /usr/share/doc/packages/icmake/examples/am /usr/share/doc/packages/icmake/examples/bup /usr/share/doc/packages/icmake/examples/defines /usr/share/doc/packages/icmake/examples/ds /usr/share/doc/packages/icmake/examples/ftpxfer /usr/share/doc/packages/icmake/examples/idir /usr/share/doc/packages/icmake/examples/initialization /usr/share/doc/packages/icmake/examples/keep /usr/share/doc/packages/icmake/examples/killprog /usr/share/doc/packages/icmake/examples/nesteddirectives /usr/share/doc/packages/icmake/examples/r /usr/share/doc/packages/icmake/examples/tolower /usr/share/doc/packages/icmake/icmstart.im.gz /usr/share/doc/packages/icmake/rebuild /usr/share/icmake /usr/share/icmake/CLASSES /usr/share/icmake/frame /usr/share/icmake/icmconf /usr/share/icmake/main.cc /usr/share/icmake/main.ih /usr/share/icmake/parser /usr/share/icmake/parser/frame /usr/share/icmake/parser/grammar /usr/share/icmake/scanner /usr/share/icmake/scanner/frame /usr/share/icmake/scanner/lexer /usr/share/icmake/scanner/scanner.ih /usr/share/icmake/usage.cc /usr/share/icmake/version.cc /usr/share/man/man1/icmake.1.gz /usr/share/man/man1/icmbuild.1.gz /usr/share/man/man1/icmodmap.1.gz /usr/share/man/man1/icmstart.1.gz /usr/share/man/man7/icmconf.7.gz /usr/share/man/man7/icmscript.7.gz /usr/share/man/man7/icmstart.rc.7.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Fri Jul 24 15:27:28 2026