| 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.00.01 | Vendor: openSUSE |
| Release: 1.1 | Build date: Mon Oct 20 15:29:02 2025 |
| Group: Development/Tools/Building | Build host: reproducible |
| Size: 1637387 | Source RPM: icmake-13.00.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
* 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
* Fri Jan 17 2020 Josef Möllers <josef.moellers@suse.com>
- Upgrade to 9.03.01
* updated the usr/share/icmake/icmconf file
* Removed an error (#-lines are comment) in the icmconf(7) man-page
* Fixed icmbuild's install command wrt installing libraries
* Using ctrl-C while executing icmstart no longer requires a terminal
reset when using bash as command shell (in fact: icm-exec restores
the initial terminal (stdin) configuration when terminated by ctrl-C).
* The standard icmake skeleton files specify namespace Icmake instead of
the previously used namespace Icmbuild.
* The icmbuild strip command is discontinued: use -s instead
* Stripping (-s) can only be specified when installing
* icmbuild options -c can only be specified when building libraries or
programs
* Redesigned icm-comp's implementation
* Changed icm-exec's int comparison function: returns 1 if equal, 0 if not
* The file 'version.cc' wasn't correctly recognized in
/usr/lib/icmake/icmbuild: fixed in this release.
* Fixed unintended termination of /usr/lib/icmake/icmbuild caused by
non-existing .gch files (when PRECOMP was specified; this happened
when a directory only contained a header, but no sources).
[9.03.01.tar.gz]
* Tue Feb 07 2017 dimstar@opensuse.org
- Explicitly package %{_docdir}/%{name} to fix build with RPM 4.13.
/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, Sat Nov 1 22:38:26 2025