Compare commits

..

17 Commits

Author SHA1 Message Date
clrbuilder 4797950600 Update packages file for version 33340
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-06-09 22:10:26 -07:00
clrbuilder 18b1f4841d Update packages file for version 33320
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-06-07 22:10:26 -07:00
clrbuilder 2a061d8ec2 Update packages file for version 33290
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-06-03 13:20:19 -07:00
clrbuilder 47927ff332 Update packages file for version 33240
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-29 02:34:08 -07:00
clrbuilder 80bb811f5f Update packages file for version 33200
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-27 05:12:04 +00:00
clrbuilder 71827cbf99 Update packages file for version 33190
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-26 05:11:22 +00:00
clrbuilder 84a9b62e3f Update packages file for version 33150
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-20 05:10:30 +00:00
Thiago Macieira 0dfb2f6ef5 Pass the make's -j option to rpmbuild
For most people simply running "make autospec" or "make build", this
will have no effect. The RPM macro %{_smp_mflags} is predefined to be
the number of CPUs in your system anyway (output of getconf
_NPROCESSORS_ONLN).

But if you do have MAKEFLAGS set in your environment to your CPU
number (and you should), that will get passed to rpmbuild, which then
uses it during the build. And if you, like me, have it set to a
slightly higher number, RPM will use that too.

But if you run "make -jN autospec", then that N will be passed to the
build. This is especially important if you have something doing "make
-j1": RPM will be -j1 too! So instead of "make -j1", run "MAKEFLAGS= make"
2020-05-19 13:47:42 -07:00
Patrick McCarty 59a46563cf Add some input validation for local repo handling
The local repo implementation makes some assumptions about the contents
of the package manager and mock conf files, so do some basic input
validation to assess whether the assumptions are correct, and exit with
informative errors if not.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2020-05-18 14:18:46 -07:00
Patrick McCarty a198b2d0a0 Make local repo support more parallel safe
For commands that modify contents of $(TOPLVL)/repo, wrap them with
`flock`, using a lock file `repo.lock` within the repo directory. This
ensures that the repo directory tree is not otherwise modified while
each command is running.

To keep the implementation simple, I opted to not wrap entire makefile
targets with a lock (e.g. lock the entire operation of `make repoadd`).
If users need that level of control, they can implement locking in a
separate wrapper script.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2020-05-18 13:55:19 -07:00
Patrick McCarty 9574f4ecde Remove R-R2Cuba
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2020-05-15 08:04:56 -07:00
clrbuilder 649f1e38de Update packages file for version 33110
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-15 05:10:58 +00:00
clrbuilder 0b86a75a10 Update packages file for version 33100
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-14 05:10:40 +00:00
clrbuilder a06eab078d Update packages file for version 33090
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-13 05:10:02 +00:00
clrbuilder d4ea9f57dc Update packages file for version 33060
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-08 05:09:10 +00:00
clrbuilder ee0847f750 Update packages file for version 33030
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-05 05:08:54 +00:00
clrbuilder 98047e4b8e Update packages file for version 33020
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2020-05-04 05:09:36 +00:00
4 changed files with 196 additions and 72 deletions
+30 -44
View File
@@ -21,7 +21,8 @@ RPMS ?= $(LATEST_RPMS)
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
# 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),)
__allsources := $(notdir $(strip $(shell cat upstream)))
@@ -172,7 +173,7 @@ autospec: preautospec-checks pullrebase localreponotice clean-old-content
--name $(PKG_NAME) \
--archives $(ARCHIVES) \
--mock-config $(MOCK_CONFIG_VAL) \
--mock-opts="$(MOCK_OPTS)" \
--mock-opts="$(MOCK_SMP_FLAGS) $(MOCK_OPTS)" \
$${SETVERSION:+ --version $${SETVERSION}} \
$${NON_INTERACTIVE:+ --non_interactive} \
$${SKIP_GIT:+ --skip-git} \
@@ -349,11 +350,6 @@ rekoji-nowait:
logcheck:
@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 repository. If this repository does not yet exist, it is created and
#help enabled.
@@ -361,22 +357,16 @@ repoadd: $(TOPLVL)/repo
@if [ -z "${LATEST_RPMS}" ]; then \
echo "No rpms found in rpms/ directory."; \
exit 1; \
fi; \
if [ -f .repo-index ]; then \
echo "Cleaning old rpms:"; \
for r in `cat .repo-index`; do \
echo "-$$r"; \
rm -f $(TOPLVL)/repo/$$r; \
done; \
rm .repo-index; \
fi; \
for r in ${LATEST_RPMS}; do \
echo "+$$r"; \
echo $$(basename $$r) >> .repo-index; \
ln -f $$r $(TOPLVL)/repo/; \
done
$(MAKE) localrepocreate
$(call localrepoenable,${PM_CONF},${MOCK_CONF})
fi
$(MAKE) -s repodel NO_CREATEREPO=1
@echo "Adding new rpms:"; \
for rpm in ${LATEST_RPMS}; do \
echo "+$${rpm#rpms/}"; \
echo "$${rpm#rpms/}" >> .repo-index; \
done; \
flock $</repo.lock ln -f -t $< ${LATEST_RPMS}
$(MAKE) -s localrepocreate
$(MAKE) -s localrepoenable
#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
@@ -385,37 +375,33 @@ repostage: $(TOPLVL)/repo
@if [ -z "${LATEST_RPMS}" ]; then \
echo "No rpms found in rpms/ directory."; \
exit 1; \
fi; \
if [ -f .repo-index ]; then \
echo "Cleaning old rpms:"; \
for r in `cat .repo-index`; do \
echo "-$$r"; \
rm -f $(TOPLVL)/repo/$$r; \
done; \
rm .repo-index; \
fi; \
for r in ${LATEST_RPMS}; do \
echo "+$$r"; \
echo $$(basename $$r) >> .repo-index; \
ln -f $$r $(TOPLVL)/repo/; \
done
fi
$(MAKE) -s repodel NO_CREATEREPO=1
@for r in ${LATEST_RPMS}; do \
echo "+$${rpm#rpms/}"; \
echo "$${rpm#rpms/}" >> .repo-index; \
done; \
flock $</repo.lock ln -f -t $< ${LATEST_RPMS}
#help repodel: Removes RPMs from the local RPM repository that were
#help previously added by 'make repoadd' for this package.
repodel:
repodel: $(TOPLVL)/repo
@if [ -f .repo-index ]; then \
echo "Cleaning old rpms:"; \
for r in `cat .repo-index`; do \
echo "-$$r"; \
rm -f $(TOPLVL)/repo/$$r; \
done; \
mapfile -t rpms < <(sed 's|.*|$</&|' .repo-index); \
for rpm in "$${rpms[@]}"; do \
echo "-$${rpm#$</}"; \
done < .repo-index; \
flock $</repo.lock rm -f "$${rpms[@]}"; \
rm .repo-index; \
$(MAKE) localrepocreate; \
if [ -z "$$NO_CREATEREPO" ]; then \
$(MAKE) -s localrepocreate; \
fi; \
fi
#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.
repoenable: $(TOPLVL)/repo ; $(call localrepoenable,${PM_CONF},${MOCK_CONF})
repoenable: localrepoenable ;
#help repodisable: Disables the local RPM repository.
repodisable: localrepodisable ;
+47 -17
View File
@@ -93,34 +93,64 @@ $(MAKE) clone_$(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.
# 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
# augmented for local repo support.
define localrepoenable
@cp $(1) $(TOPLVL)/repo/yum.conf
@printf "\n\n[local]\nname=Local\nfailovermethod=priority\nenabled=1\ngpgcheck=0\npriority=1\n" >> $(TOPLVL)/repo/yum.conf
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/yum.conf
@cp $(2) $(TOPLVL)/repo/clear.cfg
@printf "\n\n[localrepo]\nname=Local repo\nfailovermethod=priority\nenabled=1\ngpgcheck=0\npriority=1\n" >> $(TOPLVL)/repo/clear.cfg
@printf "baseurl=file://$$(realpath $(TOPLVL))/repo/\n\n" >> $(TOPLVL)/repo/clear.cfg
@sed -i '/^"""/d; $$a"""' $(TOPLVL)/repo/clear.cfg
endef
localrepoenable: $(TOPLVL)/repo
@if grep -qx '\[localrepo\]' ${PM_CONF}; then \
echo "[ERROR] ${PM_CONF} contains section named [localrepo]."; \
echo "[ERROR] Remove that section and try again."; \
exit 1; \
fi >&2
@if grep -qx '\[localrepo\]' ${MOCK_CONF}; then \
echo "[ERROR] ${MOCK_CONF} contains section named [localrepo]."; \
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
# Mock configuration files.
localrepodisable:
@rm -f $(TOPLVL)/repo/yum.conf
@rm -f $(TOPLVL)/repo/clear.cfg
localrepodisable: $(TOPLVL)/repo
flock $</repo.lock rm -f $</yum.conf $</clear.cfg
# Runs createrepo_c (or createrepo) for the local RPM repo
localrepocreate:
( cd $(TOPLVL)/repo ; if type createrepo_c 1>/dev/null 2>&1; then createrepo_c .; else createrepo .; fi );
# Runs createrepo_c for the local RPM repo
localrepocreate: $(TOPLVL)/repo
cd $< && flock repo.lock createrepo_c .
# Remove all RPMs from the local RPM repo
localrepoclean:
@find $(TOPLVL)/repo -maxdepth 1 -name '*.rpm' -delete
localrepoclean: $(TOPLVL)/repo
flock $</repo.lock find $< -maxdepth 1 -name '*.rpm' -delete
# Summarizes the local RPM repo status
localrepostatus:
+1 -6
View File
@@ -290,14 +290,9 @@ autospecnewgo: preautospecnew-checks localreponotice
exit 1; \
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 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.
repodisable: localrepodisable ;
+118 -5
View File
@@ -34,6 +34,7 @@ Judy
Keras
Keras_Applications
Keras_Preprocessing
LPCNet
LS_COLORS
LVM2
LibRaw
@@ -162,7 +163,6 @@ R-R.cache
R-R.methodsS3
R-R.oo
R-R.utils
R-R2Cuba
R-R2HTML
R-R2WinBUGS
R-R2jags
@@ -588,6 +588,7 @@ R-mlmRev
R-mnormt
R-mockery
R-mockr
R-modeldata
R-modelr
R-modeltools
R-modest
@@ -876,7 +877,6 @@ R-tis
R-tm
R-toOrdinal
R-topicmodels
R-treatSens
R-tree
R-triebeard
R-trimcluster
@@ -1046,12 +1046,14 @@ amtk
analitza
aniso8601
ansible
antlr4-python3-runtime
anyjson
apache-ant
apache-libcloud
apipkg
appdirs
applaunchservices
applicationinsights
appstream
appstream-glib
apr
@@ -1116,11 +1118,95 @@ avahi
awesome-wm
awscli
axel
azure-batch
azure-cli
azure-cli-command-modules-nspkg
azure-cli-core
azure-cli-nspkg
azure-cli-telemetry
azure-common
azure-configs
azure-core
azure-cosmos
azure-datalake-store
azure-functions-devops-build
azure-graphrbac
azure-identity
azure-iot-sdk
azure-keyvault
azure-keyvault-certificates
azure-keyvault-keys
azure-keyvault-secrets
azure-loganalytics
azure-mgmt-advisor
azure-mgmt-apimanagement
azure-mgmt-appconfiguration
azure-mgmt-applicationinsights
azure-mgmt-authorization
azure-mgmt-batch
azure-mgmt-batchai
azure-mgmt-billing
azure-mgmt-botservice
azure-mgmt-cdn
azure-mgmt-cognitiveservices
azure-mgmt-compute
azure-mgmt-consumption
azure-mgmt-containerinstance
azure-mgmt-containerregistry
azure-mgmt-containerservice
azure-mgmt-core
azure-mgmt-cosmosdb
azure-mgmt-datalake-analytics
azure-mgmt-datalake-nspkg
azure-mgmt-datalake-store
azure-mgmt-datamigration
azure-mgmt-deploymentmanager
azure-mgmt-devtestlabs
azure-mgmt-dns
azure-mgmt-eventgrid
azure-mgmt-eventhub
azure-mgmt-hdinsight
azure-mgmt-imagebuilder
azure-mgmt-iotcentral
azure-mgmt-iothub
azure-mgmt-iothubprovisioningservices
azure-mgmt-keyvault
azure-mgmt-kusto
azure-mgmt-loganalytics
azure-mgmt-managedservices
azure-mgmt-managementgroups
azure-mgmt-maps
azure-mgmt-marketplaceordering
azure-mgmt-media
azure-mgmt-monitor
azure-mgmt-msi
azure-mgmt-netapp
azure-mgmt-network
azure-mgmt-nspkg
azure-mgmt-policyinsights
azure-mgmt-privatedns
azure-mgmt-rdbms
azure-mgmt-recoveryservices
azure-mgmt-recoveryservicesbackup
azure-mgmt-redhatopenshift
azure-mgmt-redis
azure-mgmt-relay
azure-mgmt-reservations
azure-mgmt-resource
azure-mgmt-search
azure-mgmt-security
azure-mgmt-servicebus
azure-mgmt-servicefabric
azure-mgmt-signalr
azure-mgmt-sql
azure-mgmt-sqlvirtualmachine
azure-mgmt-storage
azure-mgmt-trafficmanager
azure-mgmt-web
azure-multiapi-storage
azure-nspkg
azure-servicebus
azure-storage-blob
azure-storage-common
babeltrace
babl
@@ -1349,6 +1435,7 @@ comedilib
comfortaa-fonts
commonmark
compat-SDL2-soname1
compat-boost-soname1.72.0
compat-cryptsetup-soname4
compat-curl-gnutls-soname4
compat-double-conversion-soname1
@@ -1579,6 +1666,7 @@ envs
eog
eog-plugins
epm
epson-inkjet-printer-escpr
eternalegypt
ethtool
etr
@@ -1602,6 +1690,7 @@ extras
f2fs-tools
faas-cli
faba-icon-theme
fabric
fakeroot
fangfrisch
fann
@@ -1689,6 +1778,7 @@ gcab
gcc
gcc7
gcc8
gcc9
gcompris-qt
gcr
gcs-oauth2-boto-plugin
@@ -1970,12 +2060,12 @@ intel-media-driver
intelhex
intervaltree
intltool
invoke
ioc-cbc-tools
ioping
ioport
iotop
ipaddr
ipaddress
ipcalc
ipdb
ipdbplugin
@@ -2005,6 +2095,7 @@ isa-l
iso-codes
iso8601
isodate
isomd5sum
isort
ister
isync
@@ -2020,6 +2111,7 @@ jaraco.collections
jaraco.functools
jaraco.text
jarn.viewdoc
javaproperties
jdcal
jedi
jedi-vim
@@ -2031,6 +2123,7 @@ joe
josepy
jpegoptim
jq
jsmin
json-c
json-glib
json5
@@ -2088,6 +2181,7 @@ kcachegrind
kcalc
kcalendarcore
kcalutils
kcc
kcharselect
kcmutils
kcodecs
@@ -2137,7 +2231,6 @@ keepassxc
kemoticons
kerberos
kernel-config
kernel-config-checker
kernel-install
kexec-tools
keychain
@@ -2211,6 +2304,7 @@ kmod
kmousetool
kmouth
kmplot
knack
knavalbattle
knetwalk
knewstuff
@@ -2278,6 +2372,7 @@ kwallet-pam
kwalletmanager
kwayland
kwayland-integration
kwayland-server
kwidgetsaddons
kwin
kwindowsystem
@@ -2772,6 +2867,8 @@ mpir
mpmath
mpv
mraa
msal
msal-extensions
msgpack
msgpack-c
msm
@@ -3070,6 +3167,7 @@ perl-AnyEvent-CacheDNS
perl-Apache-Htpasswd
perl-Apache-LogFormat-Compiler
perl-Apache-Session
perl-App-MigrateModules
perl-App-Nopaste
perl-App-cpanminus
perl-App-perlbrew
@@ -3350,6 +3448,7 @@ perl-Geo-IP
perl-Geo-IPfree
perl-Getopt-Euclid
perl-Getopt-Long-Descriptive
perl-Getopt-Long-Modern
perl-Getopt-Tabular
perl-Git-Version-Compare
perl-Glib
@@ -3383,6 +3482,7 @@ perl-HTTP-Negotiate
perl-HTTP-Parser-XS
perl-HTTP-Request-AsCGI
perl-HTTP-Server-Simple
perl-HTTP-Tinyish
perl-Hash-Flatten
perl-Hash-Merge
perl-Hash-MoreUtils
@@ -3490,6 +3590,7 @@ perl-Math-Utils
perl-Math-Vec
perl-Memoize-ExpireLRU
perl-Meta-Builder
perl-Metrics-Any
perl-Minion
perl-Mixin-Linewise
perl-Mock-Config
@@ -3717,6 +3818,7 @@ perl-Test-LectroTest
perl-Test-LongString
perl-Test-Manifest
perl-Test-Memory-Cycle
perl-Test-Metrics-Any
perl-Test-MockModule
perl-Test-MockTime
perl-Test-More-UTF8
@@ -3857,6 +3959,7 @@ perl-local-lib
perl-multidimensional
perl-namespace-autoclean
perl-namespace-clean
perl-pmtools
perl-prefork
perl-strictures
persistent
@@ -3967,6 +4070,7 @@ plasma-nm
plasma-pa
plasma-sdk
plasma-vault
plasma-wayland-protocols
plasma-workspace
plasma-workspace-wallpapers
plata-theme
@@ -3985,6 +4089,7 @@ polkit-qt
poppler
poppler-data-clr-rename
popt
portalocker
portaudio
portend
positional
@@ -4327,7 +4432,9 @@ scikit-image
scikit-learn
scipy
scons
scour
scowl
scp
screen
scripttest
scrypt
@@ -4430,6 +4537,7 @@ squashfs-tools
squid
sshfs
sshpass
sshtunnel
ssocr
sssd
ssw
@@ -4471,7 +4579,6 @@ sweeper
swift
swig
swupd-client
swupd-client-pre-release
swupd-overdue
swupd-probe
swupd-search
@@ -4658,6 +4765,8 @@ voluptuous-serialize
vpnc
vpp
vsqlite
vsts
vsts-cd-manager
vte
waffle
waitress
@@ -4736,9 +4845,12 @@ xf86-video-vesa
xf86-video-vmware
xfburn
xfce4-appfinder
xfce4-battery-plugin
xfce4-dev-tools
xfce4-notifyd
xfce4-panel
xfce4-pulseaudio-plugin
xfce4-screensaver
xfce4-screenshooter
xfce4-session
xfce4-settings
@@ -4785,6 +4897,7 @@ xvfb-run
xwd
xwdrun
xwininfo
xxhash
xz
yajl
yakuake