Date: Sunday, May 3, 2020 @ 19:03:45 Author: anatolik Revision: 624606
upgpkg: shards 0.10.0-1 Pull some of the Makefile fixes from upstream Added: shards/trunk/fix_build.patch Modified: shards/trunk/PKGBUILD -----------------+ PKGBUILD | 26 ++++++++++++--------- fix_build.patch | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+), 11 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2020-05-03 18:26:21 UTC (rev 624605) +++ PKGBUILD 2020-05-03 19:03:45 UTC (rev 624606) @@ -2,8 +2,8 @@ # Contributor: Jonne Haß <[email protected]> pkgname=shards -pkgver=0.9.0 -pkgrel=2 +pkgver=0.10.0 +pkgrel=1 pkgdesc='The package manager for the Crystal language' arch=(x86_64) url='https://github.com/crystal-lang/shards' @@ -10,25 +10,29 @@ license=(Apache) depends=(libyaml git pcre libevent gc) makedepends=(crystal) -source=(shards-$pkgver.tar.gz::https://github.com/crystal-lang/shards/archive/v$pkgver.tar.gz) -sha256sums=('90f230c87cc7b94ca845e6fe34f2523edcadb562d715daaf98603edfa2a94d65') +source=(shards-$pkgver.tar.gz::https://github.com/crystal-lang/shards/archive/v$pkgver.tar.gz + fix_build.patch) # a few upstream changes to fix the build +sha256sums=('3aea420df959552d1866d473c878ab1ed0b58489c4c9881ef40a170cfb775459' + '61f1a81bd3d6e386de8746fffd7f9bc1ac6db6b5a82f18fd901fd5c5edf7a09c') +prepare() { + cd shards-$pkgver + patch -p1 < ../fix_build.patch +} + build() { cd shards-$pkgver - crystal build --release -o bin/shards src/shards.cr + CRYSTAL_OPTS=--release make -j1 } check() { cd shards-$pkgver - ./bin/shards install - # currently tests fail because they try to write to read-only directory - #make test + # tests are currently failing. TODO: fix it + # make test -j1 # https://github.com/crystal-lang/shards/issues/347 } package() { cd shards-$pkgver - - install -Dm755 bin/shards "$pkgdir/usr/bin/shards" - install -Dm755 man/shards.1 "$pkgdir/usr/share/man/man1/shards.1" + PREFIX=/usr DESTDIR="$pkgdir" make install install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } Added: fix_build.patch =================================================================== --- fix_build.patch (rev 0) +++ fix_build.patch 2020-05-03 19:03:45 UTC (rev 624606) @@ -0,0 +1,64 @@ +diff --git a/Makefile b/Makefile +index 0d0b989..35d5543 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,26 +1,29 @@ + .POSIX: + + CRYSTAL = crystal +-CRFLAGS = ++SHARDS = shards + SHARDS_SOURCES = $(shell find src -name '*.cr') +-MOLINILLO_SOURCES = $(shell find lib/molinillo -name '*.cr') ++MOLINILLO_SOURCES = $(shell find lib/molinillo -name '*.cr' 2> /dev/null) + SOURCES = $(SHARDS_SOURCES) $(MOLINILLO_SOURCES) + TEMPLATES = src/templates/*.ecr + +-DESTDIR = +-PREFIX = /usr/local +-BINDIR = $(DESTDIR)$(PREFIX)/bin +-MANDIR = $(DESTDIR)$(PREFIX)/share/man +-INSTALL = /usr/bin/install ++DESTDIR ?= ++PREFIX ?= /usr/local ++BINDIR ?= $(DESTDIR)$(PREFIX)/bin ++MANDIR ?= $(DESTDIR)$(PREFIX)/share/man ++INSTALL ?= /usr/bin/install ++ ++MOLINILLO_VERSION = $(shell $(CRYSTAL) eval 'require "yaml"; puts YAML.parse(File.read("shard.lock"))["shards"]["molinillo"]["version"]') ++MOLINILLO_URL = "https://github.com/crystal-lang/crystal-molinillo/archive/v$(MOLINILLO_VERSION).tar.gz" + + all: bin/shards + + clean: phony + rm -f bin/shards + +-bin/shards: $(SOURCES) $(TEMPLATES) ++bin/shards: $(SOURCES) $(TEMPLATES) lib + @mkdir -p bin +- $(CRYSTAL) build src/shards.cr -o bin/shards $(CRFLAGS) ++ $(CRYSTAL) build src/shards.cr -o bin/shards + + install: bin/shards phony + $(INSTALL) -m 0755 -d "$(BINDIR)" "$(MANDIR)/man1" "$(MANDIR)/man5" +@@ -35,10 +38,17 @@ uninstall: phony + + test: test_unit test_integration + +-test_unit: phony +- $(CRYSTAL) spec ./spec/unit/*_spec.cr ++test_unit: phony lib ++ $(CRYSTAL) spec ./spec/unit/ + + test_integration: bin/shards phony +- $(CRYSTAL) spec ./spec/integration/*_spec.cr ++ $(CRYSTAL) spec ./spec/integration/ ++ ++lib: shard.lock ++ mkdir -p lib/molinillo ++ $(SHARDS) install || (curl -L $(MOLINILLO_URL) | tar -xzf - -C lib/molinillo --strip-components=1) ++ ++shard.lock: shard.yml ++ $(SHARDS) update + + phony:
