mirror of
https://github.com/clearlinux/common.git
synced 2026-06-16 19:16:00 +00:00
Compare commits
99 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7ea85257af | |||
| 4ccec6a4d0 | |||
| c76272e46a | |||
| 1559d4e0b5 | |||
| 3ab672318e | |||
| 890363f65f | |||
| e90b6f8c72 | |||
| 684a600f80 | |||
| a45fc62812 | |||
| 511bd629c9 | |||
| b0e3083d75 | |||
| 493f2a79af | |||
| 26e68a0cc8 | |||
| 27e4f02f58 | |||
| 2e28a2e579 | |||
| abf5c5748d | |||
| 8290cda118 | |||
| b9bb464a1a | |||
| 0121236923 | |||
| 01b1bf2d23 | |||
| dc5a8bd4ed | |||
| 337699759e | |||
| b4742ce76d | |||
| 2a95bfa0ba | |||
| a11d59cbb5 | |||
| f0cc040b91 | |||
| c55b2aee12 | |||
| 1e12976a64 | |||
| 165d207f03 | |||
| 7e1da9a64b | |||
| 23503a41af | |||
| d06ca6b262 | |||
| 8e0d099005 | |||
| c89e0eb2fd | |||
| e2f31cb9a0 | |||
| a733e9f48f | |||
| 57f1b9f792 | |||
| 08452bcc6f | |||
| 648e696701 | |||
| aa87b84d0d | |||
| a601daae51 | |||
| 0e69bbe5f1 | |||
| c976fe32c8 | |||
| 21cd35e7ab | |||
| 2cdd46b1ce | |||
| 081f8efa29 | |||
| 726481d384 | |||
| 49ce6661a3 | |||
| aba3ecef75 | |||
| bf40bb0056 | |||
| 8e349a2441 | |||
| c9a3ea50df | |||
| 1e4b77528c | |||
| e5fe3a6a3d | |||
| 27cb95023f | |||
| 4402706e5b | |||
| 046035907a | |||
| 43a3640492 | |||
| 30efe3f2e6 | |||
| 41bc67d5c3 | |||
| 791e62166b | |||
| 184466de12 | |||
| f62255e8c3 | |||
| 2d1a67d3b0 | |||
| 65c7cc8db6 | |||
| 5c7f52dc15 | |||
| 6d165ea0dd | |||
| c4ce7408a7 | |||
| 2cf46aa5a4 | |||
| a84e3f08e2 | |||
| 5322002ad9 | |||
| ad8fd73cfe | |||
| 347e0e60a5 | |||
| 9fea6124da | |||
| 50711dae29 | |||
| 62dbfd1fa9 | |||
| f20c51b4c7 | |||
| 39ba8e7488 | |||
| 3cd143d931 | |||
| 8ce1020511 | |||
| c00ea07564 | |||
| 20ac5a6fca | |||
| 3c7ffcc6f8 | |||
| 75f92917fc | |||
| ebfb7792fa | |||
| 151eb80340 | |||
| c35ddf3249 | |||
| 5de267a3aa | |||
| f14316393c | |||
| a49ed4739a | |||
| 4a7900cd72 | |||
| 6f4b36eb52 | |||
| 7fcf1ca778 | |||
| ad28b67e3d | |||
| ff9ceba3c5 | |||
| 50d755e823 | |||
| cf08aaaa5d | |||
| ecc540786b | |||
| ee24dc9199 |
+45
-4
@@ -26,6 +26,9 @@ WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
|
||||
MOCK_SMP_FLAGS=$(patsubst -j%, -D_smp_mflags\ -j%,$(filter -j%, $(MAKEFLAGS)))
|
||||
MOCK ?= $(WITH_SUDO) /usr/bin/mock -r $(MOCK_CONFIG_VAL) $(MOCK_SMP_FLAGS) $(MOCK_OPTS)
|
||||
|
||||
MOCK_CLEANUP_OPT := $(if $(CLEANUP),--cleanup-after,--no-cleanup-after)
|
||||
AUTOSPEC_CLEANUP_OPT := $(if $(CLEANUP),-C)
|
||||
|
||||
ifneq ($(wildcard upstream),)
|
||||
__allsources := $(notdir $(strip $(shell cat upstream)))
|
||||
__missingsources := $(filter-out $(wildcard ${__allsources}), ${__allsources})
|
||||
@@ -88,7 +91,7 @@ prebuild-checks:
|
||||
#help which creates a src.rpm file from the spec file.
|
||||
#help Use MOCK_OPTS environment varible to pass down arbitrary mock options.
|
||||
build: prebuild-checks configemail $(SPECFILE) upstream $(SRPMFILE)
|
||||
$(MOCK) $(SRPMFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
|
||||
$(MOCK) $(SRPMFILE) --result=results/ $(MOCK_CLEANUP_OPT) --uniqueext=$(PKG_NAME)
|
||||
$(MAKE) link-new-rpms PKG_REPO_DIR="."
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
||||
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
|
||||
@@ -96,7 +99,7 @@ build: prebuild-checks configemail $(SPECFILE) upstream $(SRPMFILE)
|
||||
|
||||
#help build-nocheck: Same as 'make build', but do not run the package's test suite.
|
||||
build-nocheck: configemail $(SPECFILE) upstream $(SRPMFILE)
|
||||
$(MOCK) $(SRPMFILE) --nocheck --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
|
||||
$(MOCK) $(SRPMFILE) --nocheck --result=results/ $(MOCK_CLEANUP_OPT) --uniqueext=$(PKG_NAME)
|
||||
$(MAKE) link-new-rpms PKG_REPO_DIR="."
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
||||
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
|
||||
@@ -117,7 +120,7 @@ shell:
|
||||
.PHONY: $(SRPMFILE)
|
||||
$(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice clean-old-content
|
||||
@$(MAKE) spdxcheck
|
||||
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
|
||||
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ $(MOCK_CLEANUP_OPT) --uniqueext=$(PKG_NAME)
|
||||
mv results/root.log results/srpm-root.log
|
||||
mv results/build.log results/srpm-build.log
|
||||
|
||||
@@ -179,7 +182,7 @@ autospec: preautospec-checks pullrebase localreponotice clean-old-content
|
||||
$${SETVERSION:+ --version $${SETVERSION}} \
|
||||
$${NON_INTERACTIVE:+ --non_interactive} \
|
||||
$${SKIP_GIT:+ --skip-git} \
|
||||
$${CLEANUP:+ -C} \
|
||||
$(AUTOSPEC_CLEANUP_OPT) \
|
||||
$(firstword $(NEWURL) $(URL));
|
||||
$(MAKE) link-new-rpms PKG_REPO_DIR="."
|
||||
@$(MAKE) spdxcheck
|
||||
@@ -522,6 +525,44 @@ cloc: $(SRPMFILE)
|
||||
@$(MOCK) --clean --scrub=chroot --uniqueext=$(PKG_NAME)
|
||||
cat results/cloc.txt
|
||||
|
||||
.PHONY: whatrequires
|
||||
#help whatrequires: Output a list of packages that directly depend on this one,
|
||||
#help showing the subpackage-level breakdown. Each line of output has the format
|
||||
#help "SUBPACKAGE(|SYMBOL)? <- PACKAGE (ARCH)". If ARCH is "src", the meaning is
|
||||
#help "PACKAGE has a BuildRequires (build dependency) on SUBPACKAGE". And if ARCH
|
||||
#help is "x86_64", the meaning is "PACKAGE has a Requires (runtime dependency) on
|
||||
#help SUBPACKAGE". The optional "|SYMBOL" portion is printed when the symbol
|
||||
#help required does not match the subpackage name. Note that the ability to query
|
||||
#help version-qualified dependencies is not yet implemented... (For example, if
|
||||
#help python3-core provides the version-qualified symbol "python(abi) = 3.9",
|
||||
#help running `make whatrequires` for `python3` will detect packages that depend on
|
||||
#help "python(abi)", but not "python(abi) = 3.9".)
|
||||
whatrequires:
|
||||
@Q="dnf --config=${PM_CONF} repoquery --quiet --releasever=clear"; \
|
||||
TMP=$$(mktemp -d); trap "rm -rf $$TMP" EXIT; \
|
||||
$${Q} --provides ${PKG_NAME} | awk '{ print $$1 }' > $$TMP/${PKG_NAME}; \
|
||||
( \
|
||||
while read -r provide; do \
|
||||
$${Q} --qf="${PKG_NAME} <- %{NAME} (x86_64)" --arch=x86_64 --srpm --whatrequires $$provide; \
|
||||
$${Q} --qf="${PKG_NAME} <- %{NAME} (src)" --arch=src --whatrequires $$provide; \
|
||||
done < $$TMP/${PKG_NAME} \
|
||||
) | awk '$$3 != "${PKG_NAME}"' | LC_COLLATE=C sort -u; \
|
||||
sed -n 's/^%package *\(.*\)$$/\1/p' ${PKG_NAME}.spec | sort > $$TMP/subpkgs; \
|
||||
while read -r val; do \
|
||||
if grep -qE '^-n +' <<< $$val; then \
|
||||
subpkg=$$(awk '{ print $$2 }' <<< $$val); \
|
||||
else \
|
||||
subpkg=${PKG_NAME}-$$val; \
|
||||
fi; \
|
||||
$${Q} --provides $$subpkg | awk '{ print $$1 }' > $$TMP/$$subpkg; \
|
||||
( \
|
||||
while read -r provide; do \
|
||||
$${Q} --qf="$$subpkg|$$provide <- %{NAME} (x86_64)" --arch=x86_64 --srpm --whatrequires $$provide; \
|
||||
$${Q} --qf="$$subpkg|$$provide <- %{NAME} (src)" --arch=src --whatrequires $$provide; \
|
||||
done < $$TMP/$$subpkg \
|
||||
) | awk '$$3 != "${PKG_NAME}"' | sed "s/^$$subpkg|\($$subpkg\)/\1/" | LC_COLLATE=C sort -u; \
|
||||
done < $$TMP/subpkgs
|
||||
|
||||
# Define LTS-specific targets in a separate makefile
|
||||
-include $(TOPLVL)/projects/common/Makefile.common.lts
|
||||
|
||||
|
||||
+10
-10
@@ -31,11 +31,13 @@ $(proj_PKGS):
|
||||
@proj=$(patsubst proj_%,%,$@); \
|
||||
[ -d projects/$$proj ] || ( \
|
||||
echo "Checking out: projects/$$proj"; \
|
||||
git clone $(PRJ_BASE_URL)/$$proj projects/$$proj; \
|
||||
cd projects/$$proj; \
|
||||
if [ "$$proj" = "autospec" ] ; then \
|
||||
git remote set-url --push origin git@github.com:clearlinux/autospec.git; \
|
||||
git clone https://github.com/clearlinux/autospec.git projects/autospec; \
|
||||
else \
|
||||
git clone $(PRJ_BASE_URL)/$$proj projects/$$proj; \
|
||||
fi; \
|
||||
cd projects/$$proj; \
|
||||
if [ "$$proj" != "autospec" ] ; then \
|
||||
$(call gitoliteurl,projects/$$proj); \
|
||||
fi; \
|
||||
$(call subjectprefix,$$proj); \
|
||||
@@ -76,9 +78,7 @@ ${PULL_PKGS}:
|
||||
fi ; \
|
||||
git --no-pager log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit $$O..$$N; echo; \
|
||||
fi ; \
|
||||
if [ "$$p" = "projects/autospec" ] ; then \
|
||||
git remote set-url --push origin git@github.com:clearlinux/autospec.git; \
|
||||
else \
|
||||
if [ "$$p" != "projects/autospec" ] ; then \
|
||||
$(call gitoliteurl,$$p); \
|
||||
fi ; \
|
||||
else \
|
||||
@@ -159,18 +159,18 @@ status: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
||||
if [ -d "$$p/.git" ] && [ -n "$$(git -C $$p status -uno --porcelain)" ]; then echo "Uncommitted changes in $$p:"; git -C "$$p" status --short; fi ;\
|
||||
done
|
||||
|
||||
#help diff: Runs git diff for all package repos and displays the output using
|
||||
#help diffstat. Requires that diffstat is installed.
|
||||
#help diff: Runs git diff for all package repos and displays the diffstat using
|
||||
#help the --stat flag.
|
||||
diff: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
||||
@for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \
|
||||
(cd $$p; git status --porcelain | grep -vq '^?? ' && (echo "Uncommitted changes in: $$p"; git diff | diffstat -p1); :) ;\
|
||||
(cd $$p; git status --porcelain | grep -vq '^?? ' && (echo "Uncommitted changes in: $$p"; git diff --stat); :) ;\
|
||||
done
|
||||
|
||||
#help log: Run git log origin/master..HEAD for all package repos, thus
|
||||
#help displaying any committed but unpushed changes.
|
||||
log: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
||||
@for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \
|
||||
( cd $$p; if [ "$$(git rev-parse --verify HEAD)" != "$$(git rev-parse --verify origin/master)" ] ; then \
|
||||
( cd $$p; if [ -n "$$(git rev-list origin/master..HEAD)" ] ; then \
|
||||
echo $$p ; git --no-pager log --pretty="format:%s" origin/master..HEAD ; echo ; echo;\
|
||||
fi ; ) \
|
||||
done
|
||||
|
||||
+2
-2
@@ -4,14 +4,14 @@ config_opts['legal_host_arches'] = ('x86_64',)
|
||||
config_opts['chroot_setup_cmd'] = 'groupinstall build srpm-build'
|
||||
config_opts['dist'] = 'clear' # only useful for --resultdir variable subst
|
||||
config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
|
||||
config_opts['useradd'] = '/usr/sbin/useradd -m -u %(uid)s -g %(gid)s -d %(home)s %(user)s'
|
||||
config_opts['useradd'] = '/usr/sbin/useradd -m -u {{chrootuid}} -g {{chrootgid}} -d {{chroothome}} {{chrootuser}}'
|
||||
config_opts['plugin_conf']['ccache_enable'] = False
|
||||
config_opts['plugin_conf']['root_cache_opts']['compress_program'] = 'zstd -5'
|
||||
config_opts['plugin_conf']['root_cache_opts']['extension'] = '.zst'
|
||||
config_opts['releasever'] = 'clear'
|
||||
config_opts['package_manager'] = 'dnf'
|
||||
config_opts['chrootgroup'] = 'mockbuild'
|
||||
config_opts['use_bootstrap_container'] = False
|
||||
config_opts['use_bootstrap'] = False
|
||||
|
||||
|
||||
config_opts['dnf.conf'] = """
|
||||
|
||||
@@ -31,6 +31,7 @@ Aladdin
|
||||
Apache-1.0
|
||||
Apache-1.1
|
||||
Apache-2.0
|
||||
App-s2p
|
||||
Artistic-1.0
|
||||
Artistic-1.0-Perl
|
||||
Artistic-1.0-cl8
|
||||
@@ -72,30 +73,40 @@ CATOSL-1.1
|
||||
CC-BY-1.0
|
||||
CC-BY-2.0
|
||||
CC-BY-2.5
|
||||
CC-BY-2.5-AU
|
||||
CC-BY-3.0
|
||||
CC-BY-3.0-AT
|
||||
CC-BY-3.0-DE
|
||||
CC-BY-3.0-NL
|
||||
CC-BY-3.0-US
|
||||
CC-BY-4.0
|
||||
CC-BY-NC-1.0
|
||||
CC-BY-NC-2.0
|
||||
CC-BY-NC-2.5
|
||||
CC-BY-NC-3.0
|
||||
CC-BY-NC-3.0-DE
|
||||
CC-BY-NC-4.0
|
||||
CC-BY-NC-ND-1.0
|
||||
CC-BY-NC-ND-2.0
|
||||
CC-BY-NC-ND-2.5
|
||||
CC-BY-NC-ND-3.0
|
||||
CC-BY-NC-ND-3.0-DE
|
||||
CC-BY-NC-ND-3.0-IGO
|
||||
CC-BY-NC-ND-4.0
|
||||
CC-BY-NC-SA-1.0
|
||||
CC-BY-NC-SA-2.0
|
||||
CC-BY-NC-SA-2.0-FR
|
||||
CC-BY-NC-SA-2.0-UK
|
||||
CC-BY-NC-SA-2.5
|
||||
CC-BY-NC-SA-3.0
|
||||
CC-BY-NC-SA-3.0-DE
|
||||
CC-BY-NC-SA-3.0-IGO
|
||||
CC-BY-NC-SA-4.0
|
||||
CC-BY-ND-1.0
|
||||
CC-BY-ND-2.0
|
||||
CC-BY-ND-2.5
|
||||
CC-BY-ND-3.0
|
||||
CC-BY-ND-3.0-DE
|
||||
CC-BY-ND-4.0
|
||||
CC-BY-SA-1.0
|
||||
CC-BY-SA-2.0
|
||||
@@ -104,6 +115,7 @@ CC-BY-SA-2.1-JP
|
||||
CC-BY-SA-2.5
|
||||
CC-BY-SA-3.0
|
||||
CC-BY-SA-3.0-AT
|
||||
CC-BY-SA-3.0-DE
|
||||
CC-BY-SA-4.0
|
||||
CC-PDDC
|
||||
CC0-1.0
|
||||
@@ -111,6 +123,7 @@ CDDL-1.0
|
||||
CDDL-1.1
|
||||
CDL-1.0
|
||||
CDLA-Permissive-1.0
|
||||
CDLA-Permissive-2.0
|
||||
CDLA-Sharing-1.0
|
||||
CECILL-1.0
|
||||
CECILL-1.1
|
||||
@@ -126,17 +139,20 @@ CERN-OHL-W-2.0
|
||||
CNRI-Jython
|
||||
CNRI-Python
|
||||
CNRI-Python-GPL-Compatible
|
||||
COIL-1.0
|
||||
CPAL-1.0
|
||||
CPL-1.0
|
||||
CPOL-1.02
|
||||
CUA-OPL-1.0
|
||||
Caldera
|
||||
ClArtistic
|
||||
Community-Spec-1.0
|
||||
Condor-1.1
|
||||
Crossword
|
||||
CrystalStacker
|
||||
Cube
|
||||
D-FSL-1.0
|
||||
DL-DE-BY-2.0
|
||||
DOC
|
||||
DRL-1.0
|
||||
DSDP
|
||||
@@ -152,9 +168,11 @@ EUDatagrid
|
||||
EUPL-1.0
|
||||
EUPL-1.1
|
||||
EUPL-1.2
|
||||
Elastic-2.0
|
||||
Entessa
|
||||
ErlPL-1.1
|
||||
Eurosym
|
||||
FDK-AAC
|
||||
FSFAP
|
||||
FSFUL
|
||||
FSFULLR
|
||||
@@ -228,6 +246,7 @@ Intel-ACPI
|
||||
Interbase-1.0
|
||||
JPNIC
|
||||
JSON
|
||||
Jam
|
||||
JasPer-2.0
|
||||
LAL-1.2
|
||||
LAL-1.3
|
||||
@@ -258,6 +277,7 @@ LiLiQ-R-1.1
|
||||
LiLiQ-Rplus-1.1
|
||||
Libpng
|
||||
Linux-OpenIB
|
||||
Linux-man-pages-copyleft
|
||||
MIT
|
||||
MIT-0
|
||||
MIT-CMU
|
||||
@@ -290,6 +310,7 @@ NGPL
|
||||
NIST-PD
|
||||
NIST-PD-fallback
|
||||
NLOD-1.0
|
||||
NLOD-2.0
|
||||
NLPL
|
||||
NOSL
|
||||
NPL-1.0
|
||||
@@ -341,6 +362,7 @@ OLDAP-2.7
|
||||
OLDAP-2.8
|
||||
OML
|
||||
OPL-1.0
|
||||
OPUBL-1.0
|
||||
OSET-PL-2.1
|
||||
OSL-1.0
|
||||
OSL-1.1
|
||||
@@ -387,6 +409,7 @@ SSH-short
|
||||
SSPL-1.0
|
||||
SWL
|
||||
Saxpath
|
||||
SchemeReport
|
||||
Sendmail
|
||||
Sendmail-8.23
|
||||
SimPL-2.0
|
||||
@@ -420,6 +443,7 @@ WTFPL
|
||||
Watcom-1.0
|
||||
Wsuipa
|
||||
X11
|
||||
X11-distribute-modifications-variant
|
||||
XFree86-1.1
|
||||
XSkat
|
||||
Xerox
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
compat-libsigc++-soname20 compat-libsigc-plus-plus-soname20
|
||||
gtk+ gtk-plus
|
||||
libsigc++ libsigc-plus-plus
|
||||
|
||||
Reference in New Issue
Block a user