mirror of
https://github.com/clearlinux/common.git
synced 2026-06-16 02:56:00 +00:00
Compare commits
37 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c6a2d6fabd | |||
| 2d8fc9a155 | |||
| 1eadce9aad | |||
| 6613644b9c | |||
| 93115e4073 | |||
| 12537cbfb0 | |||
| d397ee463a | |||
| dfe55331e6 | |||
| 0c69bfb9a9 | |||
| 689e48a2f7 | |||
| 82e334a93a | |||
| ab6c4a674f | |||
| 78de1a6a13 | |||
| 74e79ffea2 | |||
| bb21809c73 | |||
| e912d4e6ae | |||
| 340b6a74d4 | |||
| 2e8f9ef0ab | |||
| 4bdd1765c5 | |||
| 45f39671d6 | |||
| 1d46a683e0 | |||
| 41d2113b8a | |||
| 528cd77168 | |||
| 916ce142bb | |||
| e2a3b113f2 | |||
| 0acf617611 | |||
| 39aeb852fe | |||
| 0e7d7e336d | |||
| 2323c9924f | |||
| da1f1f7483 | |||
| 723a925ed8 | |||
| 7e9ee1949d | |||
| f0df3f7809 | |||
| 9f77c5b172 | |||
| 3c52bbd7d7 | |||
| 7203329212 | |||
| b76562fe35 |
+22
-12
@@ -12,9 +12,9 @@ SHELL = /bin/bash
|
||||
SPECFILE = $(addsuffix .spec, $(PKG_NAME))
|
||||
|
||||
SRPMVERS = $(shell [ ! -f $(SPECFILE) ] || rpmspec -D '_vendor clr' --srpm -q --queryformat '%{NAME}-%{VERSION}-%{RELEASE}\n' $(SPECFILE))
|
||||
SRPMFILE = results/$(SRPMVERS).src.rpm
|
||||
SRPMFILE = results/srpm/$(SRPMVERS).src.rpm
|
||||
|
||||
LATEST_RPMS = $(shell [ ! -s results/build.log ] || for r in `egrep 'Wrote.*/RPMS/.*.rpm' results/build.log | sed 's/.*\///'` ; do echo "results/$$r"; done)
|
||||
LATEST_RPMS = $(shell [ ! -s results/logs/build.log ] || for r in `egrep 'Wrote.*/RPMS/.*.rpm' results/logs/build.log | sed 's/.*\///;s/.*debuginfo/debuginfo\/&/'` ; do echo "results/$$r"; done)
|
||||
RPMS ?= $(LATEST_RPMS)
|
||||
|
||||
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
|
||||
@@ -91,18 +91,24 @@ prebuild-checks:
|
||||
#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)
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
||||
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
|
||||
mkdir -p results/logs results/debuginfo
|
||||
mv results/*.log results/logs
|
||||
mv results/*-debuginfo*.rpm results/debuginfo/
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/logs/build.log
|
||||
@perl $(TOPLVL)/projects/common/count.pl results/logs/build.log &> testresults
|
||||
@$(MAKE) checkblacklist
|
||||
|
||||
#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)
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
||||
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
|
||||
mkdir -p results/logs results/debuginfo
|
||||
mv results/*.log results/logs
|
||||
mv results/*-debuginfo*.rpm results/debuginfo/
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/logs/build.log
|
||||
@perl $(TOPLVL)/projects/common/count.pl results/logs/build.log &> testresults
|
||||
@$(MAKE) checkblacklist
|
||||
|
||||
fmvpatches: results/build.log
|
||||
fmvpatches: results/logs/build.log
|
||||
@perl $(TOPLVL)/projects/common/fmvpatches.pl $(PKG_NAME)
|
||||
|
||||
#help rootshell: Puts you in a root shell at the top of your build root.
|
||||
@@ -117,7 +123,7 @@ shell:
|
||||
.PHONY: $(SRPMFILE)
|
||||
$(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice
|
||||
@$(MAKE) spdxcheck
|
||||
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
|
||||
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/srpm/ --no-cleanup-after --uniqueext=$(PKG_NAME)
|
||||
|
||||
# Do a git fetch and a git rebase to apply local commits on top of latest
|
||||
# commits from the remote. A git fetch/rebase is used rather than a git pull so
|
||||
@@ -155,7 +161,7 @@ pullrebase:
|
||||
#help to autospec.
|
||||
#help For more information, see the project at https://github.com/clearlinux/autospec
|
||||
autospec: pullrebase localreponotice
|
||||
rm -f results/*src.rpm
|
||||
rm -f results/srpm/*src.rpm
|
||||
@if [ -e $(SPECFILE) ] && ! grep -q "# Generated by: autospec.py" $(SPECFILE) ; then \
|
||||
echo "Specfile already exists and was not created by autospec.py! Aborting."; \
|
||||
exit 1; \
|
||||
@@ -287,6 +293,10 @@ koji: prekoji-checks kojidef
|
||||
echo "Error: Must be on the master branch to submit to koji" >&2; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
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 pull --rebase; \
|
||||
fi
|
||||
@@ -317,7 +327,7 @@ rekoji-nowait:
|
||||
$(MAKE) KOJI_NOWAIT="--nowait --background" rekoji
|
||||
|
||||
logcheck:
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
|
||||
@perl $(TOPLVL)/projects/common/logcheck.pl results/logs/build.log
|
||||
|
||||
$(TOPLVL)/repo:
|
||||
@echo "Creating local RPM repository $(TOPLVL)/repo"
|
||||
@@ -327,8 +337,8 @@ $(TOPLVL)/repo:
|
||||
#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 enabled.
|
||||
repoadd: results/build.log $(TOPLVL)/repo
|
||||
@if [ -z "`grep '^Wrote: .*$(shell basename $(SRPMFILE))$$' results/build.log`" ]; then \
|
||||
repoadd: results/logs/build.log $(TOPLVL)/repo
|
||||
@if [ -z "`grep '^Wrote: .*$(shell basename $(SRPMFILE))$$' results/logs/build.log`" ]; then \
|
||||
echo "You have not yet succesfully built this release yet"; exit 1; \
|
||||
fi
|
||||
@if [ -f .repo-index ]; then \
|
||||
|
||||
+4
-4
@@ -54,17 +54,17 @@ LATEST_SRPMS = $(LATEST_RELEASE)/source/SRPMS
|
||||
PACKAGES_FILE = $(TOPLVL)/projects/common/packages
|
||||
|
||||
# Configuration file for autospec.
|
||||
AUTOSPEC_CONF = $(TOPLVL)/projects/common/autospec.conf
|
||||
AUTOSPEC_CONF = $(TOPLVL)/projects/common/conf/autospec.conf
|
||||
|
||||
# Set this variable to any non-empty value to use the package mappings stored
|
||||
# in "pkg-mapping" for cloning/pulling package repos.
|
||||
USE_PACKAGE_MAPPING = yes
|
||||
|
||||
# Package manager config file. Default to the in-tree copy.
|
||||
PM_CONF = $(TOPLVL)/projects/common/image-creator/yum.conf
|
||||
# Package manager config file. Default to the in-tree copy of dnf.conf.
|
||||
PM_CONF = $(TOPLVL)/projects/common/conf/dnf.conf
|
||||
|
||||
# Mock configuration file. Default to the in-tree copy.
|
||||
MOCK_CONF = $(TOPLVL)/projects/common/koji-client-files/clear.cfg
|
||||
MOCK_CONF = $(TOPLVL)/projects/common/conf/clear.cfg
|
||||
|
||||
|
||||
# Include any site local configuration variables. These variables may override
|
||||
|
||||
+2
-1
@@ -10,6 +10,7 @@ include $(TOPLVL)/projects/common/Makefile.shared
|
||||
SHELL = /bin/bash
|
||||
|
||||
PKGS = $(shell cat $(PACKAGES_FILE))
|
||||
PKGS_LOCAL = $(sort $(filter ${PKGS},$(subst packages/,,$(wildcard packages/*))))
|
||||
|
||||
proj_PKGS = $(addprefix proj_,$(PROJ_PKGS))
|
||||
clone_PKGS = $(addprefix clone_,$(PKGS))
|
||||
@@ -64,7 +65,7 @@ cvecheck:
|
||||
#help of merge commits, while displaying any changes since your last pull. It is
|
||||
#help silent if there are no changes.
|
||||
.PHONY: pull ${PULL_PKGS}
|
||||
PULL_PKGS:= $(addprefix PULL_projects/,$(PROJ_PKGS)) $(addprefix PULL_packages/,$(PKGS))
|
||||
PULL_PKGS:= $(addprefix PULL_projects/,$(PROJ_PKGS)) $(addprefix PULL_packages/,${PKGS_LOCAL})
|
||||
${PULL_PKGS}:
|
||||
@p=$(patsubst PULL_%,%,$@) ; \
|
||||
if [ ! -d "$$p/.git" ]; then echo "Nothing to pull for $$p - $$p/.git missing"; exit 0; fi; \
|
||||
|
||||
@@ -118,7 +118,7 @@ $ make build
|
||||
|
||||
In the past, the various make commands that call `mock` required a mock config
|
||||
installed at `/etc/mock/clear.cfg`. However, at present, the commands will
|
||||
instead use the mock config within this repo (`koji-client-files/clear.cfg`).
|
||||
instead use the mock config within this repo (`conf/clear.cfg`).
|
||||
|
||||
If you wish to use a custom mock config, you must override the `MOCK_CONF`
|
||||
variable to specify a different value to pass to mock's `-r` option. The value
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
# Configuration files
|
||||
|
||||
This directory contains various configuration files used by the developer
|
||||
tooling framework.
|
||||
|
||||
Unless otherwise noted in the config file documentation below, the config files
|
||||
can be modified with custom, site-local changes by modifying a variable in
|
||||
`Makefile.config.site_local` to point to a location of your choice (e.g.
|
||||
somewhere in `/etc`). The framework will then read the config file from the
|
||||
location you have specified instead, so copy the in-tree copy to that location
|
||||
as a starting point if you need to.
|
||||
|
||||
* `autospec.conf`: default Autospec configuration file used by `make autospec`
|
||||
and `make autospecnew`. All configuration is commented out by default, so
|
||||
default Autospec settings are used. Config variable: `AUTOSPEC_CONF`
|
||||
|
||||
* `clear.cfg`: default Mock configuration file used by various targets that
|
||||
call out to Mock. Config variable: `MOCK_CONF`
|
||||
|
||||
* `dnf.conf`: DNF conf for use as the package manager configuration file, made
|
||||
available for the framework's local repo support. Config variable: `PM_CONF`
|
||||
|
||||
* `yum.conf`: YUM conf for use as the package manager configuration file, made
|
||||
available for the framework's local repo support. Config variable: `PM_CONF`
|
||||
|
||||
* `koji.conf`: template Koji configuration file. It is installed by
|
||||
`user-setup.sh` to `/etc/koji.conf`, and the in-tree copy is not used. If you
|
||||
are using Koji with the framework, you will need to modify `/etc/koji.conf`
|
||||
according to how the Koji instance is set up for your environment. Configuring
|
||||
the installation location via `Makefile.config.site_local` is not possible at
|
||||
the moment but is a planned feature.
|
||||
@@ -18,6 +18,6 @@
|
||||
# an absolute path or a path relative to this autospec.conf.
|
||||
#packages_file =
|
||||
|
||||
# Path to yum config, used for generating whatrequires. It can be an absolute
|
||||
# Path to dnf/yum config, used for generating whatrequires. It can be an absolute
|
||||
# path or a path relative to this autospec.conf.
|
||||
#yum_conf =
|
||||
@@ -10,13 +10,14 @@ config_opts['releasever'] = 'clear'
|
||||
config_opts['package_manager'] = 'dnf'
|
||||
|
||||
|
||||
config_opts['yum.conf'] = """
|
||||
config_opts['dnf.conf'] = """
|
||||
|
||||
[main]
|
||||
cachedir=/var/cache/yum
|
||||
cachedir=/var/cache/dnf
|
||||
keepcache=1
|
||||
debuglevel=1
|
||||
reposdir=/dev/null
|
||||
logfile=/var/log/yum.log
|
||||
logfile=/var/log/dnf.log
|
||||
retries=20
|
||||
obsoletes=1
|
||||
gpgcheck=0
|
||||
@@ -0,0 +1,24 @@
|
||||
[main]
|
||||
keepcache=1
|
||||
debuglevel=1
|
||||
logfile=/var/log/dnf.log
|
||||
exactarch=1
|
||||
obsoletes=1
|
||||
gpgcheck=0
|
||||
plugins=0
|
||||
retries=10
|
||||
installonly_limit=3
|
||||
reposdir=/root/mash
|
||||
|
||||
[clear]
|
||||
name=Clear
|
||||
baseurl=https://cdn.download.clearlinux.org/current/x86_64/os/
|
||||
enabled=1
|
||||
gpgcheck=0
|
||||
|
||||
[clear-source]
|
||||
name=Clear sources
|
||||
failovermethod=priority
|
||||
baseurl=https://cdn.download.clearlinux.org/current/source/SRPMS/
|
||||
enabled=1
|
||||
gpgcheck=0
|
||||
+1
-1
@@ -82,7 +82,7 @@ sub find_file {
|
||||
return $file;
|
||||
}
|
||||
|
||||
open(BUILD_LOG, '<', "results/build.log") or die $!;
|
||||
open(BUILD_LOG, '<', "results/logs/build.log") or die $!;
|
||||
while (<BUILD_LOG>) {
|
||||
if($_ =~ /(\S+):([0-9]*):([0-9]*): note: (basic block|loop) (vectorized)/) {
|
||||
$fmv->{s_name} = (split('/',$1))[-1];
|
||||
|
||||
@@ -7,6 +7,8 @@ FreeRDP
|
||||
GConf
|
||||
Jinja2
|
||||
Keras
|
||||
Keras_Applications
|
||||
Keras_Preprocessing
|
||||
LS_COLORS
|
||||
LVM2
|
||||
LibRaw
|
||||
@@ -25,6 +27,7 @@ OpenSP
|
||||
Paste
|
||||
PasteDeploy
|
||||
Pillow
|
||||
PyMySQL
|
||||
PyWavelets
|
||||
PyYAML
|
||||
Pygments
|
||||
@@ -222,6 +225,7 @@ R-flexmix
|
||||
R-forcats
|
||||
R-foreach
|
||||
R-formatR
|
||||
R-fossil
|
||||
R-fpc
|
||||
R-futile.logger
|
||||
R-futile.options
|
||||
@@ -437,6 +441,7 @@ R-setRNG
|
||||
R-sfsmisc
|
||||
R-sgeostat
|
||||
R-shape
|
||||
R-shapefiles
|
||||
R-shiny
|
||||
R-shinyjs
|
||||
R-shinystan
|
||||
@@ -481,6 +486,7 @@ R-tidyr
|
||||
R-tidyselect
|
||||
R-tidyverse
|
||||
R-timeDate
|
||||
R-tinytex
|
||||
R-tis
|
||||
R-tm
|
||||
R-topicmodels
|
||||
@@ -505,6 +511,7 @@ R-xtable
|
||||
R-xts
|
||||
R-yaml
|
||||
R-zCompositions
|
||||
R-zip
|
||||
R-zoo
|
||||
Remmina
|
||||
SDL
|
||||
@@ -541,7 +548,6 @@ accountsservice
|
||||
acl
|
||||
acme
|
||||
acpica-unix2
|
||||
acrn-devicemodel
|
||||
acrn-hypervisor
|
||||
adwaita-icon-theme
|
||||
aeon
|
||||
@@ -735,6 +741,7 @@ connect-proxy
|
||||
connman
|
||||
connman-gtk
|
||||
conntrack-tools
|
||||
console-autostart
|
||||
containerd
|
||||
contextlib2
|
||||
coreutils
|
||||
@@ -903,6 +910,7 @@ gevent
|
||||
gexiv2
|
||||
gfbgraph
|
||||
gflags
|
||||
gftp
|
||||
ghostscript
|
||||
gimp
|
||||
git
|
||||
@@ -1111,9 +1119,15 @@ jupyter_core
|
||||
jupyterlab
|
||||
jupyterlab_launcher
|
||||
kafka-dep
|
||||
kata-image
|
||||
kata-proxy
|
||||
kata-qemu-lite
|
||||
kata-runtime
|
||||
kata-shim
|
||||
kbd
|
||||
kernel-install
|
||||
kexec-tools
|
||||
keychain
|
||||
keyring
|
||||
keyutils
|
||||
khal
|
||||
@@ -1216,6 +1230,7 @@ libisofs
|
||||
libjpeg-turbo
|
||||
libjpeg-turbo-soname8
|
||||
libksba
|
||||
libmbim
|
||||
libmediaart
|
||||
libmnl
|
||||
libmspack
|
||||
@@ -1241,6 +1256,7 @@ libpipeline
|
||||
libpng
|
||||
libpthread-stubs
|
||||
libpwquality
|
||||
libqmi
|
||||
librepo
|
||||
librsvg
|
||||
librtlsdr
|
||||
@@ -1269,6 +1285,7 @@ libunistring
|
||||
libunwind
|
||||
libusb
|
||||
libuser
|
||||
libuv
|
||||
libva
|
||||
libva-intel-driver
|
||||
libva-utils
|
||||
@@ -1305,6 +1322,7 @@ linux-gce
|
||||
linux-hyperv
|
||||
linux-hyperv-lts
|
||||
linux-hyperv-mini
|
||||
linux-kata
|
||||
linux-kvm
|
||||
linux-libc-headers
|
||||
linux-lts
|
||||
@@ -1341,11 +1359,14 @@ mc
|
||||
mccabe
|
||||
mcelog
|
||||
mdadm
|
||||
meld
|
||||
memkind
|
||||
memshrinker
|
||||
mesa
|
||||
mesa-demos
|
||||
meson
|
||||
metacity
|
||||
metrics-discovery
|
||||
micro-config-drive
|
||||
micro-config-drive-aws
|
||||
micro-config-drive-oci
|
||||
@@ -1358,10 +1379,12 @@ mixer-tools
|
||||
mkfontdir
|
||||
mkfontscale
|
||||
mkosi
|
||||
mobile-broadband-provider-info
|
||||
mock
|
||||
mod_wsgi
|
||||
moka-icon-theme
|
||||
more-itertools
|
||||
moreutils
|
||||
mosh
|
||||
motd-update
|
||||
motif
|
||||
@@ -1489,6 +1512,7 @@ patch
|
||||
patchutils
|
||||
pavucontrol
|
||||
pbr
|
||||
pbr-legacy
|
||||
pbzip2
|
||||
pciutils
|
||||
pcre
|
||||
@@ -1585,6 +1609,7 @@ perl-Test-NoWarnings
|
||||
perl-Test-Output
|
||||
perl-Test-Pod
|
||||
perl-Test-Requires
|
||||
perl-Test-RequiresInternet
|
||||
perl-Test-Simple
|
||||
perl-Test-Taint
|
||||
perl-Test-Warn
|
||||
@@ -1619,6 +1644,7 @@ pidgin-sipe
|
||||
pigz
|
||||
pinentry
|
||||
pip
|
||||
pip-legacy
|
||||
pixman
|
||||
pkcs11-helper
|
||||
pkg-config
|
||||
@@ -1685,6 +1711,7 @@ python-augeas
|
||||
python-dateutil
|
||||
python-future
|
||||
python-gflags
|
||||
python-kconfiglib
|
||||
python-krbV
|
||||
python-magic
|
||||
python-memcached
|
||||
@@ -1694,6 +1721,7 @@ python-multilib
|
||||
python-pkgconfig
|
||||
python-pocketlint
|
||||
python-polib
|
||||
python-rpm-legacypython
|
||||
python-subunit
|
||||
python-systemd
|
||||
python-tappy
|
||||
@@ -1758,6 +1786,7 @@ rpm
|
||||
rr
|
||||
rsa
|
||||
rsync
|
||||
rt-tests
|
||||
ruby
|
||||
runc
|
||||
rust-std32
|
||||
@@ -1788,6 +1817,7 @@ serf
|
||||
setproctitle
|
||||
setserial
|
||||
setuptools
|
||||
setuptools-legacy
|
||||
setuptools_scm
|
||||
setuptools_scm_git_archive
|
||||
shadow
|
||||
@@ -1826,11 +1856,13 @@ spice-protocol
|
||||
spyder-notebook
|
||||
sqlite-autoconf
|
||||
sqlparse
|
||||
squashfs-tools
|
||||
sshfs
|
||||
stack
|
||||
startup-notification
|
||||
stow
|
||||
strace
|
||||
stress-ng
|
||||
subunit
|
||||
subversion
|
||||
sudo
|
||||
@@ -1935,6 +1967,7 @@ volume_key
|
||||
vsqlite
|
||||
vte
|
||||
vulkan-sdk
|
||||
waffle
|
||||
waitress
|
||||
wayland
|
||||
wayland-protocols
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ if [ "$#" -eq 0 ]; then
|
||||
fi
|
||||
|
||||
if [ ! -e /etc/yum.conf ]; then
|
||||
echo "Error: yum.conf is missing. Please copy projects/common/image-creator/yum.conf to /etc"
|
||||
echo "Error: yum.conf is missing. Please copy projects/common/conf/yum.conf to /etc"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
Regular → Executable
+1
@@ -54,4 +54,5 @@ qemu-system-x86_64 \
|
||||
-drive file="$IMAGE",if=virtio,aio=threads,format=raw \
|
||||
-netdev user,id=mynet0,hostfwd=tcp::${VMN}0022-:22,hostfwd=tcp::${VMN}2375-:2375 \
|
||||
-device virtio-net-pci,netdev=mynet0 \
|
||||
-device virtio-rng-pci \
|
||||
-debugcon file:debug.log -global isa-debugcon.iobase=0x402 $@
|
||||
+1
-1
@@ -142,7 +142,7 @@ if [ "$USE_KOJI" ]; then
|
||||
|
||||
if [ ! -f /etc/koji.conf ]; then
|
||||
echo "Setting up koji config . . ."
|
||||
sudo cp projects/common/koji-client-files/koji.conf /etc
|
||||
sudo cp projects/common/conf/koji.conf /etc
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user