mirror of
				https://github.com/arcan1s/ahriman.git
				synced 2025-11-03 23:33:41 +00:00 
			
		
		
		
	replace script by makefile
This commit is contained in:
		
							
								
								
									
										46
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,46 @@
 | 
			
		||||
.PHONY: archive archive_directory archlinux clean directory push version
 | 
			
		||||
.DEFAULT_GOAL := archlinux
 | 
			
		||||
 | 
			
		||||
PROJECT := ahriman
 | 
			
		||||
 | 
			
		||||
FILES := COPYING CONFIGURING.md README.md package src setup.py
 | 
			
		||||
TARGET_FILES := $(addprefix $(PROJECT)/, $(FILES))
 | 
			
		||||
IGNORE_FILES := package/archlinux src/.mypy_cache
 | 
			
		||||
 | 
			
		||||
ifndef VERSION
 | 
			
		||||
$(error VERSION is not set)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
$(TARGET_FILES) : $(addprefix $(PROJECT), %) : $(addprefix ., %) directory version
 | 
			
		||||
	@cp -rp $< $@
 | 
			
		||||
 | 
			
		||||
archive: archive_directory
 | 
			
		||||
	tar cJf "$(PROJECT)-$(VERSION)-src.tar.xz" "$(PROJECT)"
 | 
			
		||||
	rm -rf "$(PROJECT)"
 | 
			
		||||
 | 
			
		||||
archive_directory: $(TARGET_FILES)
 | 
			
		||||
	rm -fr $(addprefix $(PROJECT)/, $(IGNORE_FILES))
 | 
			
		||||
	find $(PROJECT) -type f -name '*.pyc' -delete
 | 
			
		||||
	find $(PROJECT) -depth -type d -name '__pycache__' -execdir rm -rf {} +
 | 
			
		||||
	find $(PROJECT) -depth -type d -name '*.egg-info' -execdir rm -rf {} +
 | 
			
		||||
 | 
			
		||||
archlinux: archive
 | 
			
		||||
	sed -i "/sha512sums=('[0-9A-Fa-f]*/s/[^'][^)]*/sha512sums=('$$(sha512sum $(PROJECT)-$(VERSION)-src.tar.xz | awk '{print $$1}')'/" package/archlinux/PKGBUILD
 | 
			
		||||
	sed -i "s/pkgver=[0-9.]*/pkgver=$(VERSION)/" package/archlinux/PKGBUILD
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	find . -type f -name '$(PROJECT)-*-src.tar.xz' -delete
 | 
			
		||||
	rm -rf "$(PROJECT)"
 | 
			
		||||
 | 
			
		||||
directory: clean
 | 
			
		||||
	mkdir "$(PROJECT)"
 | 
			
		||||
 | 
			
		||||
push: archlinux
 | 
			
		||||
	git add package/archlinux/PKGBUILD src/ahriman/version.py
 | 
			
		||||
	git commit -m "Release $(VERSION)"
 | 
			
		||||
	git push
 | 
			
		||||
	git tag "$(VERSION)"
 | 
			
		||||
	git push --tags
 | 
			
		||||
 | 
			
		||||
version:
 | 
			
		||||
	sed -i "/__version__ = '[0-9.]*/s/[^'][^)]*/__version__ = '$(VERSION)'/" src/ahriman/version.py
 | 
			
		||||
@ -1,35 +0,0 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
VERSION="$1"
 | 
			
		||||
ARCHIVE="ahriman"
 | 
			
		||||
FILES="COPYING CONFIGURING.md README.md package src setup.py"
 | 
			
		||||
IGNORELIST="build .idea package/archlinux package/*src.tar.xz"
 | 
			
		||||
 | 
			
		||||
# set version
 | 
			
		||||
sed -i "/__version__ = '[0-9.]*/s/[^'][^)]*/__version__ = '$VERSION'/" src/ahriman/version.py
 | 
			
		||||
 | 
			
		||||
# create archive
 | 
			
		||||
[[ -e $ARCHIVE-$VERSION-src.tar.xz ]] && rm -f "$ARCHIVE-$VERSION-src.tar.xz"
 | 
			
		||||
[[ -d $ARCHIVE ]] && rm -rf "$ARCHIVE"
 | 
			
		||||
mkdir "$ARCHIVE"
 | 
			
		||||
for FILE in ${FILES[*]}; do cp -r "$FILE" "$ARCHIVE"; done
 | 
			
		||||
for FILE in ${IGNORELIST[*]}; do rm -rf "$ARCHIVE/$FILE"; done
 | 
			
		||||
tar cJf "$ARCHIVE-$VERSION-src.tar.xz" "$ARCHIVE"
 | 
			
		||||
rm -rf "$ARCHIVE"
 | 
			
		||||
 | 
			
		||||
# update checksums
 | 
			
		||||
SHA512SUMS=$(sha512sum $ARCHIVE-$VERSION-src.tar.xz | awk '{print $1}')
 | 
			
		||||
sed -i "/sha512sums=('[0-9A-Fa-f]*/s/[^'][^)]*/sha512sums=('$SHA512SUMS'/" package/archlinux/PKGBUILD
 | 
			
		||||
sed -i "s/pkgver=[0-9.]*/pkgver=$VERSION/" package/archlinux/PKGBUILD
 | 
			
		||||
 | 
			
		||||
# clear
 | 
			
		||||
find . -type f -name '*src.tar.xz' -not -name "*$VERSION-src.tar.xz" -exec rm -f {} \;
 | 
			
		||||
 | 
			
		||||
read -p "Publish release? [Ny] " -n 1 -r
 | 
			
		||||
if [[ $REPLY =~ ^[Yy]$ ]]; then
 | 
			
		||||
  git add package/archlinux/PKGBUILD src/ahriman/version.py
 | 
			
		||||
  git commit -m "Release $VERSION" && git push
 | 
			
		||||
  git tag "$VERSION" && git push --tags
 | 
			
		||||
fi
 | 
			
		||||
		Reference in New Issue
	
	Block a user