mirror of
https://github.com/clearlinux/common.git
synced 2026-06-16 02:56:00 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c360ffe52c | |||
| f092f66d8d | |||
| 704e8c90b8 | |||
| 1ca80a16a3 | |||
| 27e359bda0 | |||
| 3db02dd609 | |||
| 5866d7afbf | |||
| 437d1ee01a |
@@ -582,6 +582,78 @@ cloc: $(SRPMFILE)
|
||||
@$(MOCK) --clean --scrub=chroot --uniqueext=$(PKG_NAME)
|
||||
cat results/cloc.txt
|
||||
|
||||
#help catchup: Backport the commits from the current version to the upstream HEAD (not release).
|
||||
#help Only works if giturl is defined and the current package version can be mapped to a git tag.
|
||||
catchup:
|
||||
$(MAKE) catchup-HEAD
|
||||
|
||||
#help catchup-<commit|tag>: Backport the commits from the current version to the specified commit or tag.
|
||||
#help Only works if giturl is defined and the current package version can be mapped to a git tag.
|
||||
catchup-%:
|
||||
@target=$*; \
|
||||
giturl=$$(grep -E '^giturl\s*=\s*\S+' options.conf | sed 's/giturl\s*=\s*//' 2>/dev/null); \
|
||||
if [[ -z "$${giturl}" ]]; then \
|
||||
echo "Error: giturl not defined in options.conf"; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
mkdir -p results; \
|
||||
if [[ -d results/$(PKG_NAME) ]]; then \
|
||||
echo "Reusing existing repository..."; \
|
||||
git -C results/$(PKG_NAME) fetch origin; \
|
||||
else \
|
||||
echo "Cloning upstream repository..."; \
|
||||
git -C results clone "$${giturl}" $(PKG_NAME); \
|
||||
fi; \
|
||||
if ! git -C results/$(PKG_NAME) rev-parse --verify --quiet "$${target}" >/dev/null; then \
|
||||
echo "Error: Target commit/tag $${target} not found"; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
version=$$(rpm -q --qf '%{VERSION}\n' --specfile $(SPECFILE) | head -1); \
|
||||
echo "Version: $${version}"; \
|
||||
current_tag=$$(git -C results/$(PKG_NAME) tag --list | grep -E "^($(PKG_NAME)-)?v?$${version}$$") || { \
|
||||
echo "Error: No tag found for current package version"; \
|
||||
exit 1; \
|
||||
}; \
|
||||
echo "Catching up from $${current_tag} to $${target}"; \
|
||||
for commit in $$(git -C results/$(PKG_NAME) log --reverse --pretty=oneline $${current_tag}..$${target} | cut -d' ' -f1); do \
|
||||
$(MAKE) backport-$${commit}; \
|
||||
done;
|
||||
|
||||
|
||||
#help backport-<commit>: Retrieve a commit from the upstream git repository and save it as a backport patch.
|
||||
#help The giturl is read from options.conf.
|
||||
backport-%:
|
||||
@commit=$*; \
|
||||
echo "Backporting commit: $${commit}"; \
|
||||
giturl=$$(grep -E '^giturl\s*=\s*\S+' options.conf | sed 's/giturl\s*=\s*//' 2>/dev/null); \
|
||||
if [[ -z "$${giturl}" ]]; then \
|
||||
echo "Error: giturl not defined in options.conf"; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
mkdir -p results; \
|
||||
if [[ -d results/$(PKG_NAME) ]]; then \
|
||||
echo "Reusing existing repository..."; \
|
||||
git -C results/$(PKG_NAME) fetch origin; \
|
||||
else \
|
||||
echo "Cloning upstream repository..."; \
|
||||
git -C results clone "$${giturl}" $(PKG_NAME); \
|
||||
fi; \
|
||||
full_commit=$$(git -C results/$(PKG_NAME) show --pretty=oneline $${commit} 2>/dev/null | head -1 | cut -d' ' -f 1); \
|
||||
if [[ -z "$${full_commit}" ]]; then \
|
||||
echo "Error: Commit for $${commit} not found"; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
patch=backport-$${full_commit}.patch; \
|
||||
git -C results/$(PKG_NAME) format-patch -1 --stdout $${full_commit} > $${patch}; \
|
||||
if [[ -s $${patch} ]]; then \
|
||||
echo "$${patch} created"; \
|
||||
grep -qE "^$${patch}$$" series 2>/dev/null || echo "$${patch}" >> series; \
|
||||
else \
|
||||
rm -f $${patch}; \
|
||||
echo "Error: Failed to create backport patch"; \
|
||||
exit 1; \
|
||||
fi \
|
||||
|
||||
.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
|
||||
|
||||
@@ -180,6 +180,7 @@ R-Ryacas
|
||||
R-SGP
|
||||
R-SGPdata
|
||||
R-SQUAREM
|
||||
R-SimDesign
|
||||
R-Sleuth2
|
||||
R-SnowballC
|
||||
R-SparseM
|
||||
@@ -232,6 +233,7 @@ R-bayesplot
|
||||
R-bazar
|
||||
R-bbmle
|
||||
R-bdsmatrix
|
||||
R-beepr
|
||||
R-beeswarm
|
||||
R-bench
|
||||
R-benchr
|
||||
@@ -871,6 +873,7 @@ R-rsvg
|
||||
R-runjags
|
||||
R-rversions
|
||||
R-rvest
|
||||
R-rworldmap
|
||||
R-s2
|
||||
R-sampling
|
||||
R-sandwich
|
||||
@@ -1204,6 +1207,7 @@ boost
|
||||
borgbackup
|
||||
boto3
|
||||
botocore
|
||||
bottom
|
||||
bovo
|
||||
box2d
|
||||
bpftool
|
||||
@@ -1234,6 +1238,7 @@ buildreq-qmake
|
||||
buildreq-qt6
|
||||
buildreq-scons
|
||||
buildx
|
||||
bwidget
|
||||
byobu
|
||||
bz2file
|
||||
bzip2
|
||||
@@ -1340,6 +1345,7 @@ compat-cairomm-soname10
|
||||
compat-codec2-soname1
|
||||
compat-enchant-soname1
|
||||
compat-ffmpeg-4.4
|
||||
compat-ffmpeg-6
|
||||
compat-fuse-soname2
|
||||
compat-gcc-10
|
||||
compat-gcr-soname1
|
||||
@@ -1582,6 +1588,7 @@ fsearch
|
||||
fuse
|
||||
fwupd
|
||||
fwupd-efi
|
||||
game-music-emu
|
||||
garcon
|
||||
gawk
|
||||
gbinder-python
|
||||
@@ -1841,6 +1848,7 @@ ipe
|
||||
iperf
|
||||
ipmitool
|
||||
ipp-crypto
|
||||
ipp-usb
|
||||
iproute2
|
||||
ipset
|
||||
iptables
|
||||
@@ -1853,6 +1861,7 @@ irrlicht
|
||||
irrlichtmt
|
||||
irssi
|
||||
isa-l
|
||||
isl
|
||||
iso-codes
|
||||
isodate
|
||||
isomd5sum
|
||||
@@ -2259,6 +2268,7 @@ libmbim
|
||||
libmediaart
|
||||
libmemcached
|
||||
libmicrohttpd
|
||||
libmikmod
|
||||
libmnl
|
||||
libmodbus
|
||||
libmodplug
|
||||
@@ -2379,6 +2389,7 @@ libva
|
||||
libva-intel-driver
|
||||
libva-utils
|
||||
libvdpau
|
||||
libversion
|
||||
libvirt
|
||||
libvirt-dbus
|
||||
libvirt-glib
|
||||
@@ -3733,6 +3744,7 @@ pynvim
|
||||
pyotherside
|
||||
pyotp
|
||||
pyparted
|
||||
pypi-Yapps
|
||||
pypi-absl_py
|
||||
pypi-abydos
|
||||
pypi-accelerate
|
||||
@@ -3866,6 +3878,7 @@ pypi-click_log
|
||||
pypi-clikit
|
||||
pypi-cloudevents
|
||||
pypi-cloudflare
|
||||
pypi-clr_artifact
|
||||
pypi-cmarkgfm
|
||||
pypi-cmd2
|
||||
pypi-codecov
|
||||
@@ -3913,6 +3926,7 @@ pypi-decorator
|
||||
pypi-deepmerge
|
||||
pypi-deepspeed
|
||||
pypi-dep_logic
|
||||
pypi-dependency_groups
|
||||
pypi-deprecated
|
||||
pypi-deprecation
|
||||
pypi-devpi_client
|
||||
@@ -4497,6 +4511,7 @@ pypi-rapidfuzz
|
||||
pypi-rapidfuzz_capi
|
||||
pypi-rcssmin
|
||||
pypi-rdflib
|
||||
pypi-re2
|
||||
pypi-readme_renderer
|
||||
pypi-readtime
|
||||
pypi-recommonmark
|
||||
@@ -4971,6 +4986,7 @@ s3fs-fuse
|
||||
salt
|
||||
samba
|
||||
samtools
|
||||
sane-airscan
|
||||
sane-backends
|
||||
sassc
|
||||
sbc
|
||||
@@ -4983,6 +4999,7 @@ scour
|
||||
scowl
|
||||
screen
|
||||
scummvm
|
||||
scx
|
||||
sddm
|
||||
sddm-kcm
|
||||
seahorse
|
||||
@@ -5094,7 +5111,9 @@ tallow
|
||||
tar
|
||||
taskwarrior
|
||||
tbb
|
||||
tbtools
|
||||
tcl
|
||||
tclx
|
||||
tcpdump
|
||||
tdb
|
||||
tecla
|
||||
@@ -5163,7 +5182,6 @@ usb-modeswitch-data
|
||||
usbredir
|
||||
usbutils
|
||||
userspace-rcu
|
||||
usrbinjava
|
||||
usrbinvi
|
||||
usrsctp
|
||||
utf8proc
|
||||
@@ -5309,6 +5327,7 @@ xrandr
|
||||
xrdb
|
||||
xrdp
|
||||
xrestop
|
||||
xscorch
|
||||
xscreensaver
|
||||
xsel
|
||||
xset
|
||||
|
||||
Reference in New Issue
Block a user