mirror of
https://github.com/clearlinux/common.git
synced 2026-07-14 00:35:53 +00:00
Compare commits
126 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8f385c3366 | |||
| 305bf6f63b | |||
| 4797950600 | |||
| 18b1f4841d | |||
| 2a061d8ec2 | |||
| 47927ff332 | |||
| 80bb811f5f | |||
| 71827cbf99 | |||
| 84a9b62e3f | |||
| 0dfb2f6ef5 | |||
| 59a46563cf | |||
| a198b2d0a0 | |||
| 9574f4ecde | |||
| 649f1e38de | |||
| 0b86a75a10 | |||
| a06eab078d | |||
| d4ea9f57dc | |||
| ee0847f750 | |||
| 98047e4b8e | |||
| aa98640939 | |||
| 2b355f3fcb | |||
| 57632934c0 | |||
| a4b3da2bca | |||
| f0f2ae6fdf | |||
| 9d82331cfa | |||
| ea568f6239 | |||
| 4e2e716a76 | |||
| c64bda09fc | |||
| 65c5758c08 | |||
| 3d334b1fd4 | |||
| 31399a1cb7 | |||
| d7bff595de | |||
| 3f53222de8 | |||
| 4435eace17 | |||
| e971c54843 | |||
| c5df45b631 | |||
| 1123cf8edc | |||
| 779526d7a4 | |||
| 8280750fe8 | |||
| 72414dec9f | |||
| 61fa7c0655 | |||
| c30c608d19 | |||
| b9702018c7 | |||
| 50e2a1d14e | |||
| 941bc3100e | |||
| 2971492feb | |||
| faa11f738d | |||
| 4db065fa34 | |||
| 07cf4c7085 | |||
| 82baba5b88 | |||
| 257ff7bc57 | |||
| 80d1f17444 | |||
| 4f059caffc | |||
| 7d2f1d5e1d | |||
| d36404255b | |||
| 88dd353e21 | |||
| c232a0f6c2 | |||
| 97edcccc6f | |||
| 16fb031192 | |||
| 46d98726d5 | |||
| 0fa3b3812c | |||
| c6ae76c720 | |||
| b1cfa8f828 | |||
| 2f03d06fc4 | |||
| 514dbd5f33 | |||
| 97894ec9b3 | |||
| 4512f3ae00 | |||
| 4bbdd450d4 | |||
| f2a32480ae | |||
| 8aa923a5a6 | |||
| a757a26828 | |||
| c69acb2821 | |||
| cbb1d9688e | |||
| 9b778e9f80 | |||
| 0894cd7083 | |||
| f07e797a3b | |||
| 6b614da982 | |||
| 56fd505d76 | |||
| 60fe195c79 | |||
| f56e102bc1 | |||
| 8d829d1b6e | |||
| f6921f41e9 | |||
| 1988c8296f | |||
| d5056dcee3 | |||
| e83915a24d | |||
| 8de4c25ecc | |||
| 9feee99965 | |||
| 9396728fca | |||
| 974734a9c2 | |||
| 97aec0b795 | |||
| 46c0cf7449 | |||
| 9993ccf733 | |||
| 9f39df7d55 | |||
| a5e894a480 | |||
| 7eb9678104 | |||
| 3d0f911262 | |||
| 01888ddee2 | |||
| c0c61628a8 | |||
| c858d8c2e1 | |||
| 450e84f809 | |||
| d36cb4c6c3 | |||
| 139a6e4a14 | |||
| 37bda022bb | |||
| ddc326e53c | |||
| a3a27cd156 | |||
| 4579fa3816 | |||
| c14cac39e5 | |||
| 070be802aa | |||
| 4102816787 | |||
| 4c9c2abd21 | |||
| 70b4977b53 | |||
| 7276bc89e9 | |||
| fffa8f1e78 | |||
| 9cc15023ed | |||
| 7f5674bf08 | |||
| de60634e85 | |||
| 2b6b201866 | |||
| b24f00531c | |||
| bf4c541b1d | |||
| 25ea756641 | |||
| 367aa5c4de | |||
| 073d828fa2 | |||
| ce049d2064 | |||
| c2d67c1502 | |||
| 98cf84d3f3 | |||
| 2c3c1225bf |
+38
-47
@@ -21,7 +21,8 @@ RPMS ?= $(LATEST_RPMS)
|
|||||||
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
|
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
|
||||||
|
|
||||||
# MOCK_CONFIG_VAL is set in Makefile.shared
|
# MOCK_CONFIG_VAL is set in Makefile.shared
|
||||||
MOCK ?= $(WITH_SUDO) /usr/bin/mock -r $(MOCK_CONFIG_VAL) $(MOCK_OPTS)
|
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)
|
||||||
|
|
||||||
ifneq ($(wildcard upstream),)
|
ifneq ($(wildcard upstream),)
|
||||||
__allsources := $(notdir $(strip $(shell cat upstream)))
|
__allsources := $(notdir $(strip $(shell cat upstream)))
|
||||||
@@ -172,7 +173,7 @@ autospec: preautospec-checks pullrebase localreponotice clean-old-content
|
|||||||
--name $(PKG_NAME) \
|
--name $(PKG_NAME) \
|
||||||
--archives $(ARCHIVES) \
|
--archives $(ARCHIVES) \
|
||||||
--mock-config $(MOCK_CONFIG_VAL) \
|
--mock-config $(MOCK_CONFIG_VAL) \
|
||||||
--mock-opts="$(MOCK_OPTS)" \
|
--mock-opts="$(MOCK_SMP_FLAGS) $(MOCK_OPTS)" \
|
||||||
$${SETVERSION:+ --version $${SETVERSION}} \
|
$${SETVERSION:+ --version $${SETVERSION}} \
|
||||||
$${NON_INTERACTIVE:+ --non_interactive} \
|
$${NON_INTERACTIVE:+ --non_interactive} \
|
||||||
$${SKIP_GIT:+ --skip-git} \
|
$${SKIP_GIT:+ --skip-git} \
|
||||||
@@ -304,16 +305,21 @@ prekoji-checks:
|
|||||||
koji: prekoji-checks kojidef
|
koji: prekoji-checks kojidef
|
||||||
@$(MAKE) spdxcheck
|
@$(MAKE) spdxcheck
|
||||||
@$(MAKE) checkblacklist
|
@$(MAKE) checkblacklist
|
||||||
@if ! git branch | grep -q -E '^\* master'; then \
|
@if [ "$$(git rev-parse --abbrev-ref HEAD)" != "master" ]; then \
|
||||||
echo "Error: Must be on the master branch to submit to koji" >&2; \
|
echo "Error: Must be on the master branch to submit to koji" >&2; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi; \
|
fi; \
|
||||||
if ! git diff --quiet HEAD ${SPECFILE}; then \
|
if ! git diff --quiet HEAD -- ${SPECFILE}; then \
|
||||||
echo "Error: All changes to ${SPECFILE} must be committed first" >&2; \
|
echo "Error: All changes to ${SPECFILE} must be committed first" >&2; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi; \
|
fi; \
|
||||||
if git rev-parse --verify --quiet origin/master > /dev/null; then \
|
git fetch; \
|
||||||
|
if git rev-parse --verify --quiet origin/master >/dev/null; then \
|
||||||
git pull --rebase; \
|
git pull --rebase; \
|
||||||
|
fi; \
|
||||||
|
if git ls-remote --tags --exit-code origin $(SRPMVERS) >/dev/null; then \
|
||||||
|
echo "Error: remote tag $(SRPMVERS) already exists" >&2; \
|
||||||
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
git tag $(SRPMVERS)
|
git tag $(SRPMVERS)
|
||||||
git push origin master refs/tags/$(SRPMVERS)
|
git push origin master refs/tags/$(SRPMVERS)
|
||||||
@@ -344,11 +350,6 @@ rekoji-nowait:
|
|||||||
logcheck:
|
logcheck:
|
||||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
||||||
|
|
||||||
$(TOPLVL)/repo:
|
|
||||||
@echo "Creating local RPM repository $(TOPLVL)/repo"
|
|
||||||
mkdir $(TOPLVL)/repo
|
|
||||||
$(MAKE) localrepocreate
|
|
||||||
|
|
||||||
#help repoadd: Adds locally-built RPMs for this package to the local RPM
|
#help repoadd: Adds locally-built RPMs for this package to the local RPM
|
||||||
#help repository. If this repository does not yet exist, it is created and
|
#help repository. If this repository does not yet exist, it is created and
|
||||||
#help enabled.
|
#help enabled.
|
||||||
@@ -356,22 +357,16 @@ repoadd: $(TOPLVL)/repo
|
|||||||
@if [ -z "${LATEST_RPMS}" ]; then \
|
@if [ -z "${LATEST_RPMS}" ]; then \
|
||||||
echo "No rpms found in rpms/ directory."; \
|
echo "No rpms found in rpms/ directory."; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi; \
|
fi
|
||||||
if [ -f .repo-index ]; then \
|
$(MAKE) -s repodel NO_CREATEREPO=1
|
||||||
echo "Cleaning old rpms:"; \
|
@echo "Adding new rpms:"; \
|
||||||
for r in `cat .repo-index`; do \
|
for rpm in ${LATEST_RPMS}; do \
|
||||||
echo "-$$r"; \
|
echo "+$${rpm#rpms/}"; \
|
||||||
rm -f $(TOPLVL)/repo/$$r; \
|
echo "$${rpm#rpms/}" >> .repo-index; \
|
||||||
done; \
|
done; \
|
||||||
rm .repo-index; \
|
flock $</repo.lock ln -f -t $< ${LATEST_RPMS}
|
||||||
fi; \
|
$(MAKE) -s localrepocreate
|
||||||
for r in ${LATEST_RPMS}; do \
|
$(MAKE) -s localrepoenable
|
||||||
echo "+$$r"; \
|
|
||||||
echo $$(basename $$r) >> .repo-index; \
|
|
||||||
ln -f $$r $(TOPLVL)/repo/; \
|
|
||||||
done
|
|
||||||
$(MAKE) localrepocreate
|
|
||||||
$(call localrepoenable,${PM_CONF},${MOCK_CONF})
|
|
||||||
|
|
||||||
#help repostage: Stages locally-built RPMs for this package to the local RPM
|
#help repostage: Stages locally-built RPMs for this package to the local RPM
|
||||||
#help directory. If this directory does not yet exist, it is created and
|
#help directory. If this directory does not yet exist, it is created and
|
||||||
@@ -380,37 +375,33 @@ repostage: $(TOPLVL)/repo
|
|||||||
@if [ -z "${LATEST_RPMS}" ]; then \
|
@if [ -z "${LATEST_RPMS}" ]; then \
|
||||||
echo "No rpms found in rpms/ directory."; \
|
echo "No rpms found in rpms/ directory."; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi; \
|
fi
|
||||||
if [ -f .repo-index ]; then \
|
$(MAKE) -s repodel NO_CREATEREPO=1
|
||||||
echo "Cleaning old rpms:"; \
|
@for r in ${LATEST_RPMS}; do \
|
||||||
for r in `cat .repo-index`; do \
|
echo "+$${rpm#rpms/}"; \
|
||||||
echo "-$$r"; \
|
echo "$${rpm#rpms/}" >> .repo-index; \
|
||||||
rm -f $(TOPLVL)/repo/$$r; \
|
done; \
|
||||||
done; \
|
flock $</repo.lock ln -f -t $< ${LATEST_RPMS}
|
||||||
rm .repo-index; \
|
|
||||||
fi; \
|
|
||||||
for r in ${LATEST_RPMS}; do \
|
|
||||||
echo "+$$r"; \
|
|
||||||
echo $$(basename $$r) >> .repo-index; \
|
|
||||||
ln -f $$r $(TOPLVL)/repo/; \
|
|
||||||
done
|
|
||||||
|
|
||||||
#help repodel: Removes RPMs from the local RPM repository that were
|
#help repodel: Removes RPMs from the local RPM repository that were
|
||||||
#help previously added by 'make repoadd' for this package.
|
#help previously added by 'make repoadd' for this package.
|
||||||
repodel:
|
repodel: $(TOPLVL)/repo
|
||||||
@if [ -f .repo-index ]; then \
|
@if [ -f .repo-index ]; then \
|
||||||
echo "Cleaning old rpms:"; \
|
echo "Cleaning old rpms:"; \
|
||||||
for r in `cat .repo-index`; do \
|
mapfile -t rpms < <(sed 's|.*|$</&|' .repo-index); \
|
||||||
echo "-$$r"; \
|
for rpm in "$${rpms[@]}"; do \
|
||||||
rm -f $(TOPLVL)/repo/$$r; \
|
echo "-$${rpm#$</}"; \
|
||||||
done; \
|
done < .repo-index; \
|
||||||
|
flock $</repo.lock rm -f "$${rpms[@]}"; \
|
||||||
rm .repo-index; \
|
rm .repo-index; \
|
||||||
$(MAKE) localrepocreate; \
|
if [ -z "$$NO_CREATEREPO" ]; then \
|
||||||
|
$(MAKE) -s localrepocreate; \
|
||||||
|
fi; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#help repoenable: Enables the local RPM repository for use with Yum/DNF and
|
#help repoenable: Enables the local RPM repository for use with Yum/DNF and
|
||||||
#help Mock. If this repository does not yet exist, it is created.
|
#help Mock. If this repository does not yet exist, it is created.
|
||||||
repoenable: $(TOPLVL)/repo ; $(call localrepoenable,${PM_CONF},${MOCK_CONF})
|
repoenable: localrepoenable ;
|
||||||
|
|
||||||
#help repodisable: Disables the local RPM repository.
|
#help repodisable: Disables the local RPM repository.
|
||||||
repodisable: localrepodisable ;
|
repodisable: localrepodisable ;
|
||||||
|
|||||||
+79
-17
@@ -62,33 +62,95 @@ define remotepkgname
|
|||||||
$(if $(USE_PACKAGE_MAPPING),$$(awk -v P="$(1)" '$$1 == P { res=$$2 } END { print res ? res : P }' $(TOPLVL)/projects/common/pkg-mapping),$(1))
|
$(if $(USE_PACKAGE_MAPPING),$$(awk -v P="$(1)" '$$1 == P { res=$$2 } END { print res ? res : P }' $(TOPLVL)/projects/common/pkg-mapping),$(1))
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
# Clone repo from the configured gitolite instance, but only if the repo exists
|
||||||
|
# on that instance and matches the pattern "packages/..*".
|
||||||
|
define try-clone-gitolite
|
||||||
|
rpkg=$(call remotepkgname,$(1)); \
|
||||||
|
if ssh $(GITOLITE_BASE_URL) info "packages/$$rpkg" | grep --quiet "packages/$$rpkg$$"; then \
|
||||||
|
git clone $(PKG_BASE_URL)/$$rpkg packages/$(1); \
|
||||||
|
cd packages/$(1); \
|
||||||
|
$(call gitoliteurl,packages/$(1)); \
|
||||||
|
$(call subjectprefix,$(1)); \
|
||||||
|
fi
|
||||||
|
endef
|
||||||
|
|
||||||
|
# Clone repo from the configured package repo hosting location, as defined by
|
||||||
|
# the PKG_BASE_URL variable, but only if the repo exists.
|
||||||
|
define try-clone-other
|
||||||
|
rpkg=$(call remotepkgname,$(1)); \
|
||||||
|
if git ls-remote $(PKG_BASE_URL)/$$rpkg &> /dev/null; then \
|
||||||
|
git clone $(PKG_BASE_URL)/$$rpkg packages/$(1); \
|
||||||
|
cd packages/$(1); \
|
||||||
|
$(call subjectprefix,$(1)); \
|
||||||
|
fi
|
||||||
|
endef
|
||||||
|
|
||||||
|
# First, try running `make clone_PKG`, where PKG is the first argument. If that
|
||||||
|
# fails, proceed with fallback cloning strategies.
|
||||||
|
define clone-if-available
|
||||||
|
$(MAKE) clone_$(1) || { \
|
||||||
|
$(if $(GITOLITE_BASE_URL),$(call try-clone-gitolite,$(1)),$(call try-clone-other,$(1))); \
|
||||||
|
}
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(TOPLVL)/repo:
|
||||||
|
@echo "Creating local RPM repository $(TOPLVL)/repo"
|
||||||
|
mkdir $(TOPLVL)/repo
|
||||||
|
|
||||||
# Enables the local RPM repo by installing package manager and Mock configs.
|
# Enables the local RPM repo by installing package manager and Mock configs.
|
||||||
# First argument is the path to the package manager config, and the second
|
# First argument is the path to the package manager config, and the second
|
||||||
# argument is the path to the mock config. Each of these config files is
|
# argument is the path to the mock config. Each of these config files is
|
||||||
# augmented for local repo support.
|
# augmented for local repo support.
|
||||||
define localrepoenable
|
localrepoenable: $(TOPLVL)/repo
|
||||||
@cp $(1) $(TOPLVL)/repo/yum.conf
|
@if grep -qx '\[localrepo\]' ${PM_CONF}; then \
|
||||||
@printf "\n\n[local]\nname=Local\nfailovermethod=priority\nenabled=1\ngpgcheck=0\n" >> $(TOPLVL)/repo/yum.conf
|
echo "[ERROR] ${PM_CONF} contains section named [localrepo]."; \
|
||||||
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/yum.conf
|
echo "[ERROR] Remove that section and try again."; \
|
||||||
@cp $(2) $(TOPLVL)/repo/clear.cfg
|
exit 1; \
|
||||||
@printf "\n\n[localrepo]\nname=Local repo\nfailovermethod=priority\nenabled=1\ngpgcheck=0\n" >> $(TOPLVL)/repo/clear.cfg
|
fi >&2
|
||||||
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/clear.cfg
|
@if grep -qx '\[localrepo\]' ${MOCK_CONF}; then \
|
||||||
@sed -i '/^"""/d; $$a"""' $(TOPLVL)/repo/clear.cfg
|
echo "[ERROR] ${MOCK_CONF} contains section named [localrepo]."; \
|
||||||
endef
|
echo "[ERROR] Remove that section and try again."; \
|
||||||
|
exit 1; \
|
||||||
|
fi >&2
|
||||||
|
@last="$$(tail -n 1 ${MOCK_CONF})"; \
|
||||||
|
if [[ "$$last" != "\"\"\"" ]]; then \
|
||||||
|
echo "[ERROR] Last line of ${MOCK_CONF} is malformed; expected: \"\"\"; actual: $$last"; \
|
||||||
|
echo "[ERROR] Fix that line and try again."; \
|
||||||
|
exit 1; \
|
||||||
|
fi >&2
|
||||||
|
@pm_new=$$(mktemp -p $< yum.conf.XXXXXXX); \
|
||||||
|
pm_orig=$</yum.conf; \
|
||||||
|
mock_new=$$(mktemp -p $< clear.cfg.XXXXXXX); \
|
||||||
|
mock_orig=$</clear.cfg; \
|
||||||
|
cp ${PM_CONF} $$pm_new; \
|
||||||
|
printf "\n\n[localrepo]\nname=localrepo\nfailovermethod=priority\nenabled=1\ngpgcheck=0\npriority=1\n" >> $$pm_new; \
|
||||||
|
printf "baseurl=file://$$(realpath $<)/\n\n" >> $$pm_new; \
|
||||||
|
if ! cmp -s $$pm_new $$pm_orig; then \
|
||||||
|
flock $</repo.lock mv $$pm_new $$pm_orig; \
|
||||||
|
fi; \
|
||||||
|
rm -f $$pm_new; \
|
||||||
|
cp ${MOCK_CONF} $$mock_new; \
|
||||||
|
sed -i '$$d' $$mock_new; \
|
||||||
|
printf "\n\n[localrepo]\nname=localrepo\nfailovermethod=priority\nenabled=1\ngpgcheck=0\npriority=1\n" >> $$mock_new; \
|
||||||
|
printf "baseurl=file://$$(realpath $<)/\n\n" >> $$mock_new; \
|
||||||
|
sed -i '$$a"""' $$mock_new; \
|
||||||
|
if ! cmp -s $$mock_new $$mock_orig; then \
|
||||||
|
flock $</repo.lock mv $$mock_new $$mock_orig; \
|
||||||
|
fi; \
|
||||||
|
rm -f $$mock_new
|
||||||
|
|
||||||
# Disables the local RPM repo by removing the installed package manager and
|
# Disables the local RPM repo by removing the installed package manager and
|
||||||
# Mock configuration files.
|
# Mock configuration files.
|
||||||
localrepodisable:
|
localrepodisable: $(TOPLVL)/repo
|
||||||
@rm -f $(TOPLVL)/repo/yum.conf
|
flock $</repo.lock rm -f $</yum.conf $</clear.cfg
|
||||||
@rm -f $(TOPLVL)/repo/clear.cfg
|
|
||||||
|
|
||||||
# Runs createrepo_c (or createrepo) for the local RPM repo
|
# Runs createrepo_c for the local RPM repo
|
||||||
localrepocreate:
|
localrepocreate: $(TOPLVL)/repo
|
||||||
( cd $(TOPLVL)/repo ; if type createrepo_c 1>/dev/null 2>&1; then createrepo_c .; else createrepo .; fi );
|
cd $< && flock repo.lock createrepo_c .
|
||||||
|
|
||||||
# Remove all RPMs from the local RPM repo
|
# Remove all RPMs from the local RPM repo
|
||||||
localrepoclean:
|
localrepoclean: $(TOPLVL)/repo
|
||||||
@find $(TOPLVL)/repo -maxdepth 1 -name '*.rpm' -delete
|
flock $</repo.lock find $< -maxdepth 1 -name '*.rpm' -delete
|
||||||
|
|
||||||
# Summarizes the local RPM repo status
|
# Summarizes the local RPM repo status
|
||||||
localrepostatus:
|
localrepostatus:
|
||||||
|
|||||||
+11
-7
@@ -166,6 +166,15 @@ diff: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
|||||||
(cd $$p ; git status | grep -q 'nothing to commit, working [^ ]* clean' || (echo "Uncommitted changes in: $$p"; git diff |diffstat -p1)) ;\
|
(cd $$p ; git status | grep -q 'nothing to commit, working [^ ]* clean' || (echo "Uncommitted changes in: $$p"; git diff |diffstat -p1)) ;\
|
||||||
done
|
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 \
|
||||||
|
echo $$p ; git --no-pager log --pretty="format:%s" origin/master..HEAD ; echo ; echo;\
|
||||||
|
fi ; ) \
|
||||||
|
done
|
||||||
|
|
||||||
#help versions: Displays the version of each package in the ./packages tree.
|
#help versions: Displays the version of each package in the ./packages tree.
|
||||||
versions: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
versions: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
||||||
@for p in $(addprefix packages/,$(PKGS_LOCAL)); do \
|
@for p in $(addprefix packages/,$(PKGS_LOCAL)); do \
|
||||||
@@ -196,7 +205,7 @@ autospecnew: preautospecnew-checks localreponotice
|
|||||||
echo "Please specify NAME and URL. The ARCHIVES variable is optional."; \
|
echo "Please specify NAME and URL. The ARCHIVES variable is optional."; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
-$(MAKE) clone_$(NAME)
|
$(call clone-if-available,$(NAME))
|
||||||
@if [ ! -d $(TOPLVL)/packages/$(NAME)/.git ]; then \
|
@if [ ! -d $(TOPLVL)/packages/$(NAME)/.git ]; then \
|
||||||
echo "no remote repository found, creating new package repository and running autospec"; \
|
echo "no remote repository found, creating new package repository and running autospec"; \
|
||||||
mkdir -p $(TOPLVL)/packages/$(NAME); \
|
mkdir -p $(TOPLVL)/packages/$(NAME); \
|
||||||
@@ -281,14 +290,9 @@ autospecnewgo: preautospecnew-checks localreponotice
|
|||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$(TOPLVL)/repo:
|
|
||||||
@echo "Creating local RPM repository $(TOPLVL)/repo"
|
|
||||||
mkdir $(TOPLVL)/repo
|
|
||||||
$(MAKE) localrepocreate
|
|
||||||
|
|
||||||
#help repoenable: Enables the local RPM repository for use with Yum/DNF and
|
#help repoenable: Enables the local RPM repository for use with Yum/DNF and
|
||||||
#help Mock. If this repository does not yet exist, it is created.
|
#help Mock. If this repository does not yet exist, it is created.
|
||||||
repoenable: $(TOPLVL)/repo ; $(call localrepoenable,${PM_CONF},${MOCK_CONF})
|
repoenable: localrepoenable ;
|
||||||
|
|
||||||
#help repodisable: Disables the local RPM repository.
|
#help repodisable: Disables the local RPM repository.
|
||||||
repodisable: localrepodisable ;
|
repodisable: localrepodisable ;
|
||||||
|
|||||||
@@ -252,6 +252,7 @@ NPL-1.1
|
|||||||
NPOSL-3.0
|
NPOSL-3.0
|
||||||
NRL
|
NRL
|
||||||
NTP
|
NTP
|
||||||
|
NTP-0
|
||||||
Naumen
|
Naumen
|
||||||
Net-SNMP
|
Net-SNMP
|
||||||
NetCDF
|
NetCDF
|
||||||
@@ -264,7 +265,11 @@ OCLC-2.0
|
|||||||
ODC-By-1.0
|
ODC-By-1.0
|
||||||
ODbL-1.0
|
ODbL-1.0
|
||||||
OFL-1.0
|
OFL-1.0
|
||||||
|
OFL-1.0-RFN
|
||||||
|
OFL-1.0-no-RFN
|
||||||
OFL-1.1
|
OFL-1.1
|
||||||
|
OFL-1.1-RFN
|
||||||
|
OFL-1.1-no-RFN
|
||||||
OGL-Canada-2.0
|
OGL-Canada-2.0
|
||||||
OGL-UK-1.0
|
OGL-UK-1.0
|
||||||
OGL-UK-2.0
|
OGL-UK-2.0
|
||||||
@@ -298,6 +303,7 @@ OpenSSL
|
|||||||
PDDL-1.0
|
PDDL-1.0
|
||||||
PHP-3.0
|
PHP-3.0
|
||||||
PHP-3.01
|
PHP-3.01
|
||||||
|
PSF-2.0
|
||||||
Parity-6.0.0
|
Parity-6.0.0
|
||||||
Plexus
|
Plexus
|
||||||
PostgreSQL
|
PostgreSQL
|
||||||
@@ -392,6 +398,7 @@ gSOAP-1.3b
|
|||||||
gnuplot
|
gnuplot
|
||||||
iMatix
|
iMatix
|
||||||
libpng-2.0
|
libpng-2.0
|
||||||
|
libselinux-1.0
|
||||||
libtiff
|
libtiff
|
||||||
mpich2
|
mpich2
|
||||||
psfrag
|
psfrag
|
||||||
|
|||||||
+43
-2
@@ -102,6 +102,22 @@ def zap_entire_file_end(filename):
|
|||||||
if file.endswith(filename):
|
if file.endswith(filename):
|
||||||
files.remove(file)
|
files.remove(file)
|
||||||
|
|
||||||
|
def zap_line_in_file_substring(filename, match):
|
||||||
|
global header
|
||||||
|
global files
|
||||||
|
global files_chunks
|
||||||
|
global files_header
|
||||||
|
for file in files:
|
||||||
|
if file.endswith(filename):
|
||||||
|
for chunk in files_chunks[file]:
|
||||||
|
to_delete = list()
|
||||||
|
for line in chunk:
|
||||||
|
if match in line:
|
||||||
|
to_delete.append(line)
|
||||||
|
for line in to_delete:
|
||||||
|
chunk.remove(line)
|
||||||
|
|
||||||
|
|
||||||
def zap_line_in_file(filename, match):
|
def zap_line_in_file(filename, match):
|
||||||
global header
|
global header
|
||||||
global files
|
global files
|
||||||
@@ -209,6 +225,11 @@ def main():
|
|||||||
zap_entire_file_end("xz.sig")
|
zap_entire_file_end("xz.sig")
|
||||||
zap_entire_file_end("gz.sig")
|
zap_entire_file_end("gz.sig")
|
||||||
zap_entire_file_end("bz2.sig")
|
zap_entire_file_end("bz2.sig")
|
||||||
|
zap_entire_file_end("xz.asc")
|
||||||
|
zap_entire_file_end("gz.asc")
|
||||||
|
zap_entire_file_end("bz2.asc")
|
||||||
|
|
||||||
|
zap_entire_file_end(".pkey")
|
||||||
|
|
||||||
zap_line_in_file("b/testresults", "Total : 0")
|
zap_line_in_file("b/testresults", "Total : 0")
|
||||||
zap_line_in_file("b/testresults", "Pass : 0")
|
zap_line_in_file("b/testresults", "Pass : 0")
|
||||||
@@ -223,14 +244,15 @@ def main():
|
|||||||
|
|
||||||
zap_line_in_file_start(".spec", "Release :")
|
zap_line_in_file_start(".spec", "Release :")
|
||||||
zap_line_in_file_start(".spec", "Source99 :")
|
zap_line_in_file_start(".spec", "Source99 :")
|
||||||
zap_line_in_file_start(".spec", "Source0 :")
|
|
||||||
zap_line_in_file_start(".spec", "export SOURCE_DATE_EPOCH")
|
zap_line_in_file_start(".spec", "export SOURCE_DATE_EPOCH")
|
||||||
zap_line_in_file_start(".spec", "export AR=gcc-ar")
|
zap_line_in_file_start(".spec", "export AR=gcc-ar")
|
||||||
zap_line_in_file_start(".spec", "export RANLIB=gcc-ranlib")
|
zap_line_in_file_start(".spec", "export RANLIB=gcc-ranlib")
|
||||||
zap_line_in_file_start(".spec", "export NM=gcc-nm")
|
zap_line_in_file_start(".spec", "export NM=gcc-nm")
|
||||||
zap_line_in_file_start(".spec", "export CFLAGS=\"$CFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
zap_line_in_file_start(".spec", "export CFLAGS=\"$CFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
||||||
zap_line_in_file_start(".spec", "export FCFLAGS=\"$CFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
zap_line_in_file_start(".spec", "export FCFLAGS=\"$CFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
||||||
|
zap_line_in_file_start(".spec", "export FCFLAGS=\"$FFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
||||||
zap_line_in_file_start(".spec", "export FFLAGS=\"$CFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
zap_line_in_file_start(".spec", "export FFLAGS=\"$CFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
||||||
|
zap_line_in_file_start(".spec", "export FFLAGS=\"$FFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
||||||
zap_line_in_file_start(".spec", "export CXXFLAGS=\"$CXXFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
zap_line_in_file_start(".spec", "export CXXFLAGS=\"$CXXFLAGS -O3 -ffat-lto-objects -flto=4 \"")
|
||||||
zap_line_in_file_start(".spec", "%setup -q -n ")
|
zap_line_in_file_start(".spec", "%setup -q -n ")
|
||||||
zap_line_in_file_start(".spec", "URL :")
|
zap_line_in_file_start(".spec", "URL :")
|
||||||
@@ -265,12 +287,17 @@ def main():
|
|||||||
zap_line_in_file_start(".spec", "%description license")
|
zap_line_in_file_start(".spec", "%description license")
|
||||||
zap_line_in_file_start(".spec", "%package doc")
|
zap_line_in_file_start(".spec", "%package doc")
|
||||||
zap_line_in_file_start(".spec", "cp -a ")
|
zap_line_in_file_start(".spec", "cp -a ")
|
||||||
|
zap_line_in_file_start(".spec", "cd %{_builddir}/")
|
||||||
|
zap_line_in_file_start(".spec", "export GCC_IGNORE_WERROR=1")
|
||||||
|
zap_line_in_file_start(".spec", "rm -rf %{buildroot}")
|
||||||
|
|
||||||
zap_line_in_file_start("b/Makefile", "URL =")
|
zap_line_in_file_start("b/Makefile", "URL =")
|
||||||
zap_line_in_file_start("b/Makefile", "PKG_NAME :=")
|
zap_line_in_file_start("b/Makefile", "PKG_NAME :=")
|
||||||
|
|
||||||
|
zap_line_in_file_start("b/options.conf", "name = ")
|
||||||
zap_line_in_file("b/options.conf", "archives = ")
|
zap_line_in_file("b/options.conf", "archives = ")
|
||||||
zap_line_in_file("b/options.conf", "giturl = ")
|
zap_line_in_file("b/options.conf", "giturl = ")
|
||||||
|
zap_line_in_file_start("b/options.conf", "url = ")
|
||||||
zap_line_in_file("b/options.conf", "[package]")
|
zap_line_in_file("b/options.conf", "[package]")
|
||||||
zap_line_in_file("b/options.conf", "")
|
zap_line_in_file("b/options.conf", "")
|
||||||
zap_line_in_file("b/options.conf", "[autospec]")
|
zap_line_in_file("b/options.conf", "[autospec]")
|
||||||
@@ -287,11 +314,13 @@ def main():
|
|||||||
zap_line_in_file("b/options.conf", "# disable parallelization during build")
|
zap_line_in_file("b/options.conf", "# disable parallelization during build")
|
||||||
zap_line_in_file("b/options.conf", "broken_parallel_build = false")
|
zap_line_in_file("b/options.conf", "broken_parallel_build = false")
|
||||||
zap_line_in_file("b/options.conf", "# this package is a library compatability package and only ships versioned library files")
|
zap_line_in_file("b/options.conf", "# this package is a library compatability package and only ships versioned library files")
|
||||||
|
zap_line_in_file("b/options.conf", "# this package is a library compatibility package and only ships versioned library files")
|
||||||
zap_line_in_file("b/options.conf", "compat = false")
|
zap_line_in_file("b/options.conf", "compat = false")
|
||||||
zap_line_in_file("b/options.conf", "# set conservative build flags")
|
zap_line_in_file("b/options.conf", "# set conservative build flags")
|
||||||
zap_line_in_file("b/options.conf", "conservative_flags = false")
|
zap_line_in_file("b/options.conf", "conservative_flags = false")
|
||||||
zap_line_in_file("b/options.conf", "# dev package requires the extras to be installed")
|
zap_line_in_file("b/options.conf", "# dev package requires the extras to be installed")
|
||||||
zap_line_in_file("b/options.conf", "dev_requires_extras = false")
|
zap_line_in_file("b/options.conf", "dev_requires_extras = false")
|
||||||
|
zap_line_in_file("b/options.conf", "nodebug = false")
|
||||||
zap_line_in_file("b/options.conf", "# pass -ffast-math to compiler")
|
zap_line_in_file("b/options.conf", "# pass -ffast-math to compiler")
|
||||||
zap_line_in_file("b/options.conf", "fast-math = false")
|
zap_line_in_file("b/options.conf", "fast-math = false")
|
||||||
zap_line_in_file("b/options.conf", "# optimize build for speed over size")
|
zap_line_in_file("b/options.conf", "# optimize build for speed over size")
|
||||||
@@ -321,9 +350,17 @@ def main():
|
|||||||
zap_line_in_file("b/options.conf", "# add clang flags")
|
zap_line_in_file("b/options.conf", "# add clang flags")
|
||||||
zap_line_in_file("b/options.conf", "use_clang = false")
|
zap_line_in_file("b/options.conf", "use_clang = false")
|
||||||
zap_line_in_file("b/options.conf", "# configure build for lto")
|
zap_line_in_file("b/options.conf", "# configure build for lto")
|
||||||
zap_line_in_file("b/options.conf", "use_lto = false")
|
zap_line_in_file("b/options.conf", "use_lto = true")
|
||||||
zap_line_in_file("b/options.conf", "# require package verification for build")
|
zap_line_in_file("b/options.conf", "# require package verification for build")
|
||||||
zap_line_in_file("b/options.conf", "verify_required = true")
|
zap_line_in_file("b/options.conf", "verify_required = true")
|
||||||
|
zap_line_in_file("b/options.conf", "# do not generate debuginfo for this package")
|
||||||
|
zap_line_in_file("b/options.conf", "# configure build also for openmpi")
|
||||||
|
zap_line_in_file("b/options.conf", "openmpi = false")
|
||||||
|
zap_line_in_file("b/options.conf", "alias =")
|
||||||
|
zap_line_in_file("b/options.conf", "alias = ")
|
||||||
|
zap_line_in_file("b/options.conf", "nodebug = false")
|
||||||
|
zap_line_in_file("b/options.conf", "domain =")
|
||||||
|
zap_line_in_file("b/options.conf", "domain = ")
|
||||||
|
|
||||||
zap_line_in_file("b/buildreq_add", "# This file contains additional build requirements that did not get")
|
zap_line_in_file("b/buildreq_add", "# This file contains additional build requirements that did not get")
|
||||||
zap_line_in_file("b/buildreq_add", "# picked up automatically. One name per line, no whitespace.")
|
zap_line_in_file("b/buildreq_add", "# picked up automatically. One name per line, no whitespace.")
|
||||||
@@ -349,7 +386,11 @@ def main():
|
|||||||
zap_plus_line_in_file("symbols32")
|
zap_plus_line_in_file("symbols32")
|
||||||
|
|
||||||
zap_entire_file("b/whatrequires")
|
zap_entire_file("b/whatrequires")
|
||||||
|
zap_entire_file("b/versions")
|
||||||
|
zap_entire_file("b/.gitignore")
|
||||||
|
|
||||||
|
|
||||||
|
zap_line_in_file_substring(".spec", "%{buildroot}/usr/share/package-licenses") # version number change in license copy
|
||||||
zap_empty_chunks()
|
zap_empty_chunks()
|
||||||
|
|
||||||
print_all()
|
print_all()
|
||||||
|
|||||||
+1
-1
@@ -102,7 +102,7 @@ fi
|
|||||||
|
|
||||||
required_progs() {
|
required_progs() {
|
||||||
local bindir="/usr/bin"
|
local bindir="/usr/bin"
|
||||||
for f in git mock rpm rpmbuild ; do
|
for f in git mock rpm rpmbuild diffstat ; do
|
||||||
[ ! -x "${bindir}/${f}" ] && missing+="${f} "
|
[ ! -x "${bindir}/${f}" ] && missing+="${f} "
|
||||||
done
|
done
|
||||||
[ "$PEM" ] && [ ! -x /usr/bin/koji ] && missing+="koji "
|
[ "$PEM" ] && [ ! -x /usr/bin/koji ] && missing+="koji "
|
||||||
|
|||||||
Reference in New Issue
Block a user