Compare commits
2 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| c988de7029 | |||
| 02701c4de2 |
15
_service
Normal file
15
_service
Normal file
@@ -0,0 +1,15 @@
|
||||
<services>
|
||||
<service name="obs_scm" mode="disabled">
|
||||
<param name="scm">git</param>
|
||||
<param name="url">https://gitlab.com/fbb-git/icmake.git</param>
|
||||
<param name="revision">13.00.01</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
</service>
|
||||
<service name="set_version" mode="disabled"/>
|
||||
<service name="tar" mode="disabled"/>
|
||||
<service name="recompress" mode="disabled">
|
||||
<param name="file">*.tar</param>
|
||||
<param name="compression">bz2</param>
|
||||
</service>
|
||||
</services>
|
||||
4
_servicedata
Normal file
4
_servicedata
Normal file
@@ -0,0 +1,4 @@
|
||||
<servicedata>
|
||||
<service name="tar_scm">
|
||||
<param name="url">https://gitlab.com/fbb-git/icmake.git</param>
|
||||
<param name="changesrevision">6c2e6babc4481bd03cd59a826be9990c8d5d908c</param></service></servicedata>
|
||||
277
fix-lib-path-for-builds-file.patch
Normal file
277
fix-lib-path-for-builds-file.patch
Normal file
@@ -0,0 +1,277 @@
|
||||
Index: icmake-13.04.00/icmake/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/build
|
||||
+++ icmake-13.04.00/icmake/build
|
||||
@@ -66,32 +66,32 @@ echo "
|
||||
|
||||
# cp the default skeleton files to tmp/usr/share/icmake
|
||||
|
||||
- echo "default skeleton files in usr/share/icmake/ to tmp/usr/share/icmake
|
||||
+ echo "default skeleton files in usr/share/icmake/ to tmp${SKELDIR}
|
||||
"
|
||||
- try cp -r usr/share/icmake/* tmp/usr/share/icmake/
|
||||
+ try cp -r usr/share/icmake/* tmp${SKELDIR}
|
||||
|
||||
# cp the config files in ./etc/icmake to tmp/etc/icmake
|
||||
|
||||
- echo "configuration files in etc/icmake to tmp/etc/icmake
|
||||
+ echo "configuration files in etc/icmake to tmp${CONFDIR}
|
||||
"
|
||||
- try cp -r etc/icmake/* tmp/etc/icmake/
|
||||
+ try cp -r etc/icmake/* tmp${CONFDIR}/
|
||||
|
||||
# manpages: write the man pages in doc/ to tmp/usr/share/man/
|
||||
|
||||
- cp doc/*.1 tmp/usr/share/man/man1
|
||||
- cp doc/*.7 tmp/usr/share/man/man7
|
||||
+ cp doc/*.1 tmp${MANDIR}/man1
|
||||
+ cp doc/*.7 tmp${MANDIR}/man7
|
||||
|
||||
# manpages: "compress the man-pages below tmp/usr/share/man/
|
||||
|
||||
- echo "compress man-pages .1 in tmp/usr/share/man/man1
|
||||
+ echo "compress man-pages .1 in tmp${MANDIR}/man1
|
||||
"
|
||||
- cd tmp/usr/share/man/man1
|
||||
+ cd tmp${MANDIR}/man1
|
||||
for x in *.1 ; do
|
||||
gzip -9cn $x > $x.gz || exit 1
|
||||
done
|
||||
rm -f *.1
|
||||
|
||||
- echo "compress man-pages .7 in tmp/usr/share/man/man7
|
||||
+ echo "compress man-pages .7 in tmp${MANDIR}/man7
|
||||
"
|
||||
cd ../man7
|
||||
for x in *.7 ; do
|
||||
@@ -103,17 +103,17 @@ echo "
|
||||
|
||||
# install the doc/icmake files
|
||||
|
||||
- echo "compress changelog in tmp/usr/share/doc/icmake
|
||||
+ echo "compress changelog in tmp${DOCDIR}
|
||||
"
|
||||
- gzip -9cn changelog > tmp/usr/share/doc/icmake/changelog.gz || exit 1
|
||||
+ gzip -9cn changelog > tmp${DOCDIR}/changelog.gz || exit 1
|
||||
|
||||
- echo "cp examples files to tmp/usr/share/doc/icmake
|
||||
+ echo "cp examples files to tmp${DOCDIR}
|
||||
"
|
||||
- try cp -r examples tmp/usr/share/doc/icmake
|
||||
+ try cp -r examples tmp${DOCDIR}
|
||||
|
||||
- echo "cp rebuild script and friends to tmp/usr/share/doc/icmake/
|
||||
+ echo "cp rebuild script and friends to tmp${DOCDIR}
|
||||
"
|
||||
- try cp -r rebuild build2nd README.rebuild tmp/usr/share/doc/icmake
|
||||
+ try cp -r rebuild build2nd README.rebuild tmp${DOCDIR}
|
||||
|
||||
echo "cp ./etc files to tmp/etc
|
||||
"
|
||||
Index: icmake-13.04.00/icmake/buildscripts/multicomp
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/buildscripts/multicomp
|
||||
+++ icmake-13.04.00/icmake/buildscripts/multicomp
|
||||
@@ -4,7 +4,7 @@
|
||||
# $1 is, e.g., /usr/libexec/icmake/icm-dep
|
||||
|
||||
. ../buildscripts/precomp
|
||||
-
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
build()
|
||||
{
|
||||
@@ -42,7 +42,7 @@ IFS=${ORGIFS}
|
||||
|
||||
opts=" -Wall -Werror"
|
||||
|
||||
- ../tmp/usr/libexec/icmake/icm-multicomp -q jobs \
|
||||
+ ../tmp${LIBDIR}/icm-multicomp -q jobs \
|
||||
'/usr/bin/g++ -c -o $2 '${ICMAKE_CPPSTD}"${opts}"' $1' || exit 1
|
||||
|
||||
/usr/bin/g++ -o ../tmp/$1 tmp/*.o -L../tmp -licmake ${LDFLAGS} || exit 1
|
||||
Index: icmake-13.04.00/icmake/buildscripts/multicompobj
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/buildscripts/multicompobj
|
||||
+++ icmake-13.04.00/icmake/buildscripts/multicompobj
|
||||
@@ -4,7 +4,8 @@
|
||||
# $1 is, e.g., /usr/libexec/icmake/icm-dep
|
||||
|
||||
. ../buildscripts/precomp
|
||||
-
|
||||
+. ../tmp/INSTALL.sh
|
||||
+
|
||||
jobs()
|
||||
{
|
||||
count=0 # use o-file numbers to avoid name collisions
|
||||
@@ -44,7 +45,7 @@ build()
|
||||
# use -O2
|
||||
export ICMAKE_CPPSTD="${ICMAKE_CPPSTD} -O2"
|
||||
# multi-compile
|
||||
- ../tmp/usr/libexec/icmake/icm-multicomp -q jobs
|
||||
+ ../tmp${LIBDIR}/icm-multicomp -q jobs
|
||||
# created the o-files .tgz
|
||||
# tar czf ../tmp/usr/share/icmake/ofiles.tgz *.o
|
||||
# clean up
|
||||
Index: icmake-13.04.00/icmake/buildscripts/precomp
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/buildscripts/precomp
|
||||
+++ icmake-13.04.00/icmake/buildscripts/precomp
|
||||
@@ -8,7 +8,7 @@ Buiding tmp/spch.gch and using .ih.gch f
|
||||
OPTS='g++ -Wall -Werror -O2 -c -o $2 '
|
||||
OPTS="$OPTS ${ICMAKE_CPPSTD}${opts} -x c++header \$1"
|
||||
|
||||
- ../tmp/usr/libexec/icmake/icm-spch $1 --all spch tmp/ "'${OPTS}'"
|
||||
+ ../tmp${LIBDIR}/icm-spch $1 --all spch tmp/ "'${OPTS}'"
|
||||
|
||||
rm spch
|
||||
}
|
||||
Index: icmake-13.04.00/icmake/comp/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/comp/build
|
||||
+++ icmake-13.04.00/icmake/comp/build
|
||||
@@ -2,9 +2,10 @@
|
||||
|
||||
# icm-spch and icm-multicomp must be available
|
||||
. ../buildscripts/multicomp
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-comp"
|
||||
+Building tmp${LIBDIR}/icm-comp"
|
||||
|
||||
-build /usr/libexec/icmake/icm-comp
|
||||
+build ${LIBDIR}/icm-comp
|
||||
|
||||
Index: icmake-13.04.00/icmake/dep/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/dep/build
|
||||
+++ icmake-13.04.00/icmake/dep/build
|
||||
@@ -1,8 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
. ../buildscripts/multicomp
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-dep"
|
||||
+Building tmp${LIBDIR}/icm-dep"
|
||||
|
||||
-build /usr/libexec/icmake/icm-dep
|
||||
+build ${LIBDIR}/icm-dep
|
||||
Index: icmake-13.04.00/icmake/exec/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/exec/build
|
||||
+++ icmake-13.04.00/icmake/exec/build
|
||||
@@ -1,8 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
. ../buildscripts/multicomp
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-exec"
|
||||
+Building tmp${LIBDIR}/icm-exec"
|
||||
|
||||
-build /usr/libexec/icmake/icm-exec
|
||||
+build ${LIBDIR}/icm-exec
|
||||
Index: icmake-13.04.00/icmake/install
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/install
|
||||
+++ icmake-13.04.00/icmake/install
|
||||
@@ -48,8 +48,8 @@ progs()
|
||||
# maybe strip the binaries
|
||||
|
||||
if [ "$STRIP" == "strip" ] ; then
|
||||
- try strip tmp/usr/bin/icmake tmp/usr/bin/icmbuild \
|
||||
- tmp/usr/bin/icmodmap tmp/usr/libexec/icmake/*
|
||||
+ try strip tmp${BINDIR}/icmake tmp${BINDIR}/icmbuild \
|
||||
+ tmp${BINDIR}/icmodmap tmp${LIBDIR}/*
|
||||
echo
|
||||
fi
|
||||
|
||||
Index: icmake-13.04.00/icmake/multicmp/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/multicmp/build
|
||||
+++ icmake-13.04.00/icmake/multicmp/build
|
||||
@@ -6,13 +6,14 @@
|
||||
|
||||
. ../buildscripts/precomp
|
||||
. ../buildscripts/build
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-multicomp"
|
||||
+Building tmp${LIBDIR}/icm-multicomp"
|
||||
|
||||
# do the precompilation
|
||||
precomp
|
||||
|
||||
# execute build installing the program in the destination dir.
|
||||
-build /usr/libexec/icmake/icm-multicomp
|
||||
+build ${LIBDIR}/icm-multicomp
|
||||
find ./ -name '*.gch' -exec rm {} \;
|
||||
Index: icmake-13.04.00/icmake/pp/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/pp/build
|
||||
+++ icmake-13.04.00/icmake/pp/build
|
||||
@@ -1,8 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
. ../buildscripts/multicomp
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-pp"
|
||||
+Building tmp${LIBDIR}/icm-pp"
|
||||
|
||||
-build /usr/libexec/icmake/icm-pp
|
||||
+build ${LIBDIR}/icm-pp
|
||||
Index: icmake-13.04.00/icmake/prepare
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/prepare
|
||||
+++ icmake-13.04.00/icmake/prepare
|
||||
@@ -63,9 +63,9 @@ YEARS=\"${YEARS}\"" > tmp/INSTALL.sh
|
||||
|
||||
|
||||
echo "Creating intermediate construction directories below ./tmp"
|
||||
-try mkdir -p tmp/usr/bin tmp/usr/libexec/icmake tmp/usr/share/icmake
|
||||
-try mkdir -p tmp/etc/icmake tmp/usr/share/man/man1
|
||||
-try mkdir -p tmp/usr/share/man/man7 tmp/usr/share/doc/icmake
|
||||
+try mkdir -p tmp${BINDIR} tmp${LIBDIR} tmp${SKELDIR}
|
||||
+try mkdir -p tmp${CONFDIR} tmp${MANDIR}/man1
|
||||
+try mkdir -p tmp${MANDIR}/man7 tmp${DOCDIR}
|
||||
|
||||
echo
|
||||
echo Next: call ./buildlib x
|
||||
Index: icmake-13.04.00/icmake/spch/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/spch/build
|
||||
+++ icmake-13.04.00/icmake/spch/build
|
||||
@@ -2,10 +2,11 @@
|
||||
|
||||
# make ../bootstrap/build available in the current directory
|
||||
. ../buildscripts/build
|
||||
+. ../tmp/INSTALL.sh
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-spch"
|
||||
+Building tmp${LIBDIR}/icm-spch"
|
||||
|
||||
# execute build installing the program in the destination dir,
|
||||
# which is under TMP_DIR
|
||||
-build /usr/libexec/icmake/icm-spch
|
||||
+build ${LIBDIR}/icm-spch
|
||||
Index: icmake-13.04.00/icmake/un/build
|
||||
===================================================================
|
||||
--- icmake-13.04.00.orig/icmake/un/build
|
||||
+++ icmake-13.04.00/icmake/un/build
|
||||
@@ -3,6 +3,6 @@
|
||||
. ../buildscripts/multicomp
|
||||
|
||||
echo "
|
||||
-Building tmp/usr/libexec/icmake/icm-un"
|
||||
+Building tmp${LIBDIR}/icm-un"
|
||||
|
||||
-build /usr/libexec/icmake/icm-un
|
||||
+build ${LIBDIR}/icm-un
|
||||
16
fix-spch-process.patch
Normal file
16
fix-spch-process.patch
Normal file
@@ -0,0 +1,16 @@
|
||||
Index: icmake-13.00.01/icmake/spch/process/spch.cc
|
||||
===================================================================
|
||||
--- icmake-13.00.01.orig/icmake/spch/process/spch.cc
|
||||
+++ icmake-13.00.01/icmake/spch/process/spch.cc
|
||||
@@ -10,7 +10,10 @@ int Process::spch() const
|
||||
ofstream out = Exception::factory<ofstream>( d_options.spch() );
|
||||
|
||||
for (string const &line: StringSet{ Classes{ d_options }.readClasses() })
|
||||
- out << "#include \"" << line << "\"\n";
|
||||
+ {
|
||||
+ if (Tools::exists(line))
|
||||
+ out << "#include \"" + line + "\"\n";
|
||||
+ }
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
diff --git a/icmake/comp/symtab/symtab.h b/icmake/comp/symtab/symtab.h
|
||||
index cea2df3..a57ea2c 100644
|
||||
--- a/icmake/comp/symtab/symtab.h
|
||||
+++ b/icmake/comp/symtab/symtab.h
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
+#include <cstdint>
|
||||
|
||||
#include "../exprtype/exprtype.h"
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:730a8fa45a1623e119d11e9506c1eb887b0dd2530117be560c40c9ce6d553ca8
|
||||
size 357102
|
||||
3
icmake-13.00.01.tar.bz2
Normal file
3
icmake-13.00.01.tar.bz2
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:db0b20190a3d07120eb8dcdd51e614abcc5bc46a9b52ff9ec20cf9949195f8db
|
||||
size 553698
|
||||
120
icmake.changes
120
icmake.changes
@@ -1,3 +1,123 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 20 13:29:02 UTC 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 03:05:57 UTC 2024 - Bernhard Wiedemann <bwiedemann@suse.com>
|
||||
|
||||
|
||||
54
icmake.spec
54
icmake.spec
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package icmake
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC and contributors
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -17,17 +17,16 @@
|
||||
|
||||
|
||||
Name: icmake
|
||||
Version: 10.03.00
|
||||
Version: 13.00.01
|
||||
Release: 0
|
||||
Summary: A program maintenance (make) utility using a C-like grammar
|
||||
License: GPL-3.0-only
|
||||
Group: Development/Tools/Building
|
||||
URL: https://gitlab.com/fbb-git/icmake
|
||||
Source: %{URL}/-/archive/%{version}/icmake-%{version}.tar.bz2
|
||||
Patch1: prevent-double-slash.patch
|
||||
Patch2: gcc-13-fix.patch
|
||||
# PATCH-FIX-UPSTREAM https://gitlab.com/fbb-git/icmake/-/merge_requests/5
|
||||
Patch3: reproducible.patch
|
||||
Patch: fix-lib-path-for-builds-file.patch
|
||||
# FIXED-UPSTREAM
|
||||
Patch: fix-spch-process.patch
|
||||
BuildRequires: bison
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc-c++
|
||||
@@ -44,23 +43,32 @@ that have proven to be useful in program maintenance.
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
export CXXFLAGS="%{optflags} -std=c++20"
|
||||
echo "/* created during rpmbuild */" > %{name}/INSTALL.im
|
||||
echo "#define BINDIR \"%{_bindir}\"" >> %{name}/INSTALL.im
|
||||
echo "#define SKELDIR \"%{_datadir}/%{name}\"" >> %{name}/INSTALL.im
|
||||
echo "#define MANDIR \"%{_mandir}\"" >> %{name}/INSTALL.im
|
||||
echo "#define LIBDIR \"%{_libdir}/%{name}\"" >> %{name}/INSTALL.im
|
||||
echo "#define CONFDIR \"%{_sysconfdir}/%{name}\"" >> %{name}/INSTALL.im
|
||||
echo "#define DOCDIR \"%{_docdir}/%{name}\"" >> %{name}/INSTALL.im
|
||||
echo "#define DOCDOCDIR \"%{_docdir}/%{name}\"" >> %{name}/INSTALL.im
|
||||
export CXXFLAGS="%{optflags} -std=c++2b -g"
|
||||
export ICMAKE_CPPSTD="${CXXFLAGS}"
|
||||
_bindir=%{_bindir}
|
||||
_datadir=%{_datadir}
|
||||
_mandir=%{_mandir}
|
||||
_libdir=%{_libdir}
|
||||
_sysdir=%{_sysconfdir}
|
||||
_docdir=%{_docdir}
|
||||
{
|
||||
echo "/* created during rpmbuild */"
|
||||
echo "#define BINDIR \"${_bindir:1}\""
|
||||
echo "#define SKELDIR \"${_datadir:1}/%{name}\""
|
||||
echo "#define MANDIR \"${_mandir:1}\""
|
||||
echo "#define LIBDIR \"${_libdir:1}/%{name}\""
|
||||
echo "#define CONFDIR \"${_sysdir:1}/%{name}\""
|
||||
echo "#define DOCDIR \"${_docdir:1}/%{name}\""
|
||||
} > %{name}/INSTALL.im
|
||||
pushd %{name}
|
||||
./icm_prepare "/"
|
||||
./icm_bootstrap ""
|
||||
./prepare "/"
|
||||
./buildlib "/"
|
||||
./build all
|
||||
popd
|
||||
|
||||
%install
|
||||
pushd %{name}
|
||||
./icm_install all %{buildroot}
|
||||
./install strip all %{buildroot}
|
||||
popd
|
||||
|
||||
%files
|
||||
@@ -68,9 +76,11 @@ popd
|
||||
%doc %{_docdir}/%{name}/
|
||||
%{_bindir}/icmake
|
||||
%{_bindir}/icmbuild
|
||||
%{_bindir}/icmodmap
|
||||
%{_bindir}/icmstart
|
||||
%{_mandir}/man1/icmake.1%{ext_man}
|
||||
%{_mandir}/man1/icmbuild.1%{ext_man}
|
||||
%{_mandir}/man1/icmodmap.1%{ext_man}
|
||||
%{_mandir}/man1/icmstart.1%{ext_man}
|
||||
%{_mandir}/man7/icmconf.7%{ext_man}
|
||||
%{_mandir}/man7/icmstart.rc.7%{ext_man}
|
||||
@@ -78,10 +88,12 @@ popd
|
||||
%{_datadir}/icmake
|
||||
%dir %{_libdir}/icmake
|
||||
%{_libdir}/icmake/icm-comp
|
||||
%{_libdir}/icmake/icm-exec
|
||||
%{_libdir}/icmake/icm-pp
|
||||
%{_libdir}/icmake/icm-dep
|
||||
%{_libdir}/icmake/icmun
|
||||
%{_libdir}/icmake/icm-exec
|
||||
%{_libdir}/icmake/icm-multicomp
|
||||
%{_libdir}/icmake/icm-pp
|
||||
%{_libdir}/icmake/icm-spch
|
||||
%{_libdir}/icmake/icm-un
|
||||
%{_libdir}/icmake/icmbuild
|
||||
%{_libdir}/icmake/icmstart.bim
|
||||
%dir %{_sysconfdir}/icmake
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
Index: icmake-8.01.00/icmake/icm_prepare
|
||||
===================================================================
|
||||
--- icmake-8.01.00.orig/icmake/icm_prepare
|
||||
+++ icmake-8.01.00/icmake/icm_prepare
|
||||
@@ -27,7 +27,7 @@ try mkdir -p tmp
|
||||
|
||||
echo Writing tmp/ROOT
|
||||
ROOT=`echo $1 | sed 's_/$__'`
|
||||
-echo "ROOT=${ROOT}/" > tmp/ROOT
|
||||
+echo "ROOT=${ROOT}" > tmp/ROOT
|
||||
|
||||
. scripts/conversions
|
||||
|
||||
Index: icmake-8.01.00/icmake/scripts/conversions
|
||||
===================================================================
|
||||
--- icmake-8.01.00.orig/icmake/scripts/conversions
|
||||
+++ icmake-8.01.00/icmake/scripts/conversions
|
||||
@@ -3,7 +3,7 @@ CONFIG=INSTALL.im
|
||||
. VERSION
|
||||
. tmp/ROOT
|
||||
|
||||
-ROOT=`echo ${ROOT}/ | sed 's,//,/,g' | sed 's,//,/,g'`
|
||||
+ROOT=`echo ${ROOT} | sed 's,//,/,g' | sed 's,//,/,g'`
|
||||
|
||||
EXTENSION=`grep '^#' $CONFIG | grep "#define[[:space:]]\+EXTENSION" | \
|
||||
sed 's,.*EXTENSION[[:space:]]\+\"\([^"]*\)".*,'${ROOT}'\1,'`
|
||||
@@ -1,52 +0,0 @@
|
||||
https://gitlab.com/fbb-git/icmake/-/merge_requests/5
|
||||
From cf873922def05742c3076bb53dc77e44d2cf3eb7 Mon Sep 17 00:00:00 2001
|
||||
From: "Bernhard M. Wiedemann" <bwiedemann@suse.de>
|
||||
Date: Sun, 6 Nov 2022 04:26:47 +0100
|
||||
Subject: [PATCH] Sort input file list
|
||||
|
||||
so that libsupport.a builds in a reproducible way
|
||||
in spite of non-deterministic filesystem readdir order
|
||||
|
||||
See https://reproducible-builds.org/ for why this is good.
|
||||
|
||||
This patch was done while working on reproducible builds for openSUSE.
|
||||
---
|
||||
icmake/bootstrap/functions | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
Index: icmake-10.03.00/icmake/bootstrap/functions
|
||||
===================================================================
|
||||
--- icmake-10.03.00.orig/icmake/bootstrap/functions
|
||||
+++ icmake-10.03.00/icmake/bootstrap/functions
|
||||
@@ -10,11 +10,11 @@ subdirs()
|
||||
{
|
||||
[ "`find ./ -mindepth 1 -maxdepth 1 -type d -name ORG`" != "" ] && return
|
||||
|
||||
- for subdir in `find ./ -mindepth 1 -maxdepth 1 -type d` ; do
|
||||
+ for subdir in `find ./ -mindepth 1 -maxdepth 1 -type d | sort` ; do
|
||||
try cd $subdir
|
||||
add=0
|
||||
srclist=`find -mindepth 1 -maxdepth 1 -type f -name '*.cc' \
|
||||
- -exec basename '{}' ';'`
|
||||
+ -exec basename '{}' ';' | sort`
|
||||
if [ "$srclist" != "" ]
|
||||
then
|
||||
ih=${subdir}.ih
|
||||
@@ -23,7 +23,7 @@ subdirs()
|
||||
try ${CXX} ${CXXFLAGS} -x c++-header $ih
|
||||
fi
|
||||
for src in `find -mindepth 1 -maxdepth 1 -type f -name '*.cc' \
|
||||
- -exec basename '{}' ';'` ; do
|
||||
+ -exec basename '{}' ';' | sort` ; do
|
||||
obj=../${dir}${src%%.*}.o
|
||||
if [ $src -nt ${obj} ] ; then
|
||||
try ${CXX} ${CXXFLAGS} -o${obj} -c $src
|
||||
@@ -39,7 +39,7 @@ subdirs()
|
||||
maindir() # $1: destination program path,
|
||||
{ # unused: $2: optional -s, use LDFLAGS
|
||||
for src in `find -mindepth 1 -maxdepth 1 -type f -name '*.cc' \
|
||||
- -exec basename '{}' ';'` ; do
|
||||
+ -exec basename '{}' ';' | sort` ; do
|
||||
if [ "$src" != "main.cc" ] ; then
|
||||
obj=${src%%.*}.o
|
||||
if [ $src -nt ${obj} ] ; then
|
||||
Reference in New Issue
Block a user