mirror of
https://github.com/clearlinux/common.git
synced 2026-06-16 19:16:00 +00:00
Compare commits
82 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 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 |
+8
-3
@@ -304,16 +304,21 @@ prekoji-checks:
|
||||
koji: prekoji-checks kojidef
|
||||
@$(MAKE) spdxcheck
|
||||
@$(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; \
|
||||
exit 1; \
|
||||
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; \
|
||||
exit 1; \
|
||||
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; \
|
||||
fi; \
|
||||
if git ls-remote --tags --exit-code origin $(SRPMVERS) >/dev/null; then \
|
||||
echo "Error: remote tag $(SRPMVERS) already exists" >&2; \
|
||||
exit 1; \
|
||||
fi
|
||||
git tag $(SRPMVERS)
|
||||
git push origin master refs/tags/$(SRPMVERS)
|
||||
|
||||
@@ -62,6 +62,38 @@ 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))
|
||||
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
|
||||
|
||||
|
||||
# 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
|
||||
# argument is the path to the mock config. Each of these config files is
|
||||
|
||||
+10
-1
@@ -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)) ;\
|
||||
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.
|
||||
versions: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
|
||||
@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."; \
|
||||
exit 1; \
|
||||
fi
|
||||
-$(MAKE) clone_$(NAME)
|
||||
$(call clone-if-available,$(NAME))
|
||||
@if [ ! -d $(TOPLVL)/packages/$(NAME)/.git ]; then \
|
||||
echo "no remote repository found, creating new package repository and running autospec"; \
|
||||
mkdir -p $(TOPLVL)/packages/$(NAME); \
|
||||
|
||||
@@ -252,6 +252,7 @@ NPL-1.1
|
||||
NPOSL-3.0
|
||||
NRL
|
||||
NTP
|
||||
NTP-0
|
||||
Naumen
|
||||
Net-SNMP
|
||||
NetCDF
|
||||
@@ -264,7 +265,11 @@ OCLC-2.0
|
||||
ODC-By-1.0
|
||||
ODbL-1.0
|
||||
OFL-1.0
|
||||
OFL-1.0-RFN
|
||||
OFL-1.0-no-RFN
|
||||
OFL-1.1
|
||||
OFL-1.1-RFN
|
||||
OFL-1.1-no-RFN
|
||||
OGL-Canada-2.0
|
||||
OGL-UK-1.0
|
||||
OGL-UK-2.0
|
||||
@@ -298,6 +303,7 @@ OpenSSL
|
||||
PDDL-1.0
|
||||
PHP-3.0
|
||||
PHP-3.01
|
||||
PSF-2.0
|
||||
Parity-6.0.0
|
||||
Plexus
|
||||
PostgreSQL
|
||||
@@ -392,6 +398,7 @@ gSOAP-1.3b
|
||||
gnuplot
|
||||
iMatix
|
||||
libpng-2.0
|
||||
libselinux-1.0
|
||||
libtiff
|
||||
mpich2
|
||||
psfrag
|
||||
|
||||
+33
-1
@@ -102,6 +102,22 @@ def zap_entire_file_end(filename):
|
||||
if file.endswith(filename):
|
||||
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):
|
||||
global header
|
||||
global files
|
||||
@@ -209,6 +225,11 @@ def main():
|
||||
zap_entire_file_end("xz.sig")
|
||||
zap_entire_file_end("gz.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", "Pass : 0")
|
||||
@@ -223,14 +244,15 @@ def main():
|
||||
|
||||
zap_line_in_file_start(".spec", "Release :")
|
||||
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 AR=gcc-ar")
|
||||
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 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=\"$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=\"$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", "%setup -q -n ")
|
||||
zap_line_in_file_start(".spec", "URL :")
|
||||
@@ -267,12 +289,15 @@ def main():
|
||||
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", "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", "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", "")
|
||||
zap_line_in_file("b/options.conf", "[autospec]")
|
||||
@@ -329,8 +354,13 @@ def main():
|
||||
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", "# 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", "# picked up automatically. One name per line, no whitespace.")
|
||||
@@ -358,7 +388,9 @@ def main():
|
||||
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()
|
||||
|
||||
print_all()
|
||||
|
||||
+1
-1
@@ -102,7 +102,7 @@ fi
|
||||
|
||||
required_progs() {
|
||||
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} "
|
||||
done
|
||||
[ "$PEM" ] && [ ! -x /usr/bin/koji ] && missing+="koji "
|
||||
|
||||
Reference in New Issue
Block a user