Compare commits
8 Commits
693ac6e677
...
cee0af195e
Author | SHA1 | Date | |
---|---|---|---|
cee0af195e
|
|||
01a0601652
|
|||
ffe2c08a35
|
|||
5b1bdefacd
|
|||
d38a5df36f
|
|||
55dd8d743d
|
|||
7e6249bc3c
|
|||
adbda33078
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -23,4 +23,4 @@
|
|||||||
.vscode/targets.log
|
.vscode/targets.log
|
||||||
|
|
||||||
# packaging
|
# packaging
|
||||||
/debian
|
/build
|
||||||
|
68
Makefile
68
Makefile
@ -3,6 +3,20 @@ Q = $(if $(filter 1, $V),, @)
|
|||||||
BINDIR=$(CURDIR)/bin
|
BINDIR=$(CURDIR)/bin
|
||||||
PREFIX=/usr
|
PREFIX=/usr
|
||||||
DESTDIR=bin
|
DESTDIR=bin
|
||||||
|
BUILDDIR=$(CURDIR)/build
|
||||||
|
|
||||||
|
DEBBUILDDIR=$(BUILDDIR)/deb
|
||||||
|
DEBTMPLDIR=$(CURDIR)/packaging/debian
|
||||||
|
DEBDATE=$(shell date -R)
|
||||||
|
DEBORIGSRC=lume_$(DEBVERSION).orig.tar.xz
|
||||||
|
DEBORIGSRCDIR=lume-$(DEBVERSION)
|
||||||
|
|
||||||
|
RPMVERSION=$(subst -,_,$(LUME_VERSION))
|
||||||
|
RPMBUILDDIR=$(BUILDDIR)/rpm
|
||||||
|
RPMTMPLDIR=$(CURDIR)/packaging/rpm
|
||||||
|
RPMDATE=$(shell date "+%a %b %d %Y")
|
||||||
|
RPMORIGSRC=lume-$(RPMVERSION).tar.xz
|
||||||
|
RPMORIGSRCDIR=lume-$(RPMVERSION)
|
||||||
|
|
||||||
ifeq ($(OS), Windows_NT)
|
ifeq ($(OS), Windows_NT)
|
||||||
EXE=$(BINDIR)/lume.exe
|
EXE=$(BINDIR)/lume.exe
|
||||||
@ -16,17 +30,24 @@ endif
|
|||||||
|
|
||||||
LUME_VERSION ?= $(shell git describe --tags --always)
|
LUME_VERSION ?= $(shell git describe --tags --always)
|
||||||
GIT_COMMIT := $(shell git rev-parse --short HEAD)
|
GIT_COMMIT := $(shell git rev-parse --short HEAD)
|
||||||
|
GIT_TAG=$(shell git describe --tags --abbrev=0)
|
||||||
LDFLAGS = \
|
LDFLAGS = \
|
||||||
-X git.kill0.net/chill9/lume/cmd.Version=$(LUME_VERSION) \
|
-X git.kill0.net/chill9/lume/cmd.Version=$(LUME_VERSION) \
|
||||||
-X git.kill0.net/chill9/lume/cmd.BuildDate=$(BUILD_DATE) \
|
-X git.kill0.net/chill9/lume/cmd.BuildDate=$(BUILD_DATE) \
|
||||||
-X git.kill0.net/chill9/lume/cmd.GitCommit=$(GIT_COMMIT)
|
-X git.kill0.net/chill9/lume/cmd.GitCommit=$(GIT_COMMIT)
|
||||||
|
|
||||||
|
ifneq (,$(findstring -,$(LUME_VERSION)))
|
||||||
|
DEBVERSION=$(GIT_TAG)+git$(shell date +%Y%m%d)+$(GIT_COMMIT)
|
||||||
|
else
|
||||||
|
DEBVERSION=$(LUME_VERSION)
|
||||||
|
endif
|
||||||
|
|
||||||
.PHONY: build
|
.PHONY: build
|
||||||
build:
|
build:
|
||||||
$(Q) go build -o $(EXE) -ldflags="$(LDFLAGS)" ./cmd/lume
|
$(Q) go build -o $(EXE) -ldflags="$(LDFLAGS)" ./cmd/lume
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean: deb-clean
|
clean: deb-clean rpm-clean
|
||||||
$(Q) $(RM) $(EXE)
|
$(Q) $(RM) $(EXE)
|
||||||
|
|
||||||
.PHONY: install
|
.PHONY: install
|
||||||
@ -34,18 +55,41 @@ install:
|
|||||||
$(Q) install -p -D -m 0755 $(EXE) $(DESTDIR)${PREFIX}/bin/lume
|
$(Q) install -p -D -m 0755 $(EXE) $(DESTDIR)${PREFIX}/bin/lume
|
||||||
$(Q) install -p -D -m 0644 .lumerc.sample $(DESTDIR)${PREFIX}/share/lume/lumerc
|
$(Q) install -p -D -m 0644 .lumerc.sample $(DESTDIR)${PREFIX}/share/lume/lumerc
|
||||||
|
|
||||||
DEBDIR=$(CURDIR)/debian
|
|
||||||
TMPLDIR=$(CURDIR)/packaging/debian
|
|
||||||
DEBDATE=$(shell date -R)
|
|
||||||
|
|
||||||
.PHONY: deb
|
.PHONY: deb
|
||||||
deb:
|
deb:
|
||||||
$(Q) mkdir -p $(DEBDIR)
|
$(Q) mkdir -p $(DEBBUILDDIR)
|
||||||
$(Q) sed -e 's/__VERSION__/$(LUME_VERSION)/g' $(TMPLDIR)/rules > $(DEBDIR)/rules
|
$(Q) git archive --format tar --prefix lume-$(DEBVERSION)/ $(LUME_VERSION) | xz > $(DEBBUILDDIR)/$(DEBORIGSRC)
|
||||||
$(Q) sed -e 's/__VERSION__/$(LUME_VERSION)/g' -e 's/__DATE__/$(DEBDATE)/g' $(TMPLDIR)/changelog > $(DEBDIR)/changelog
|
$(Q) tar xf $(DEBBUILDDIR)/$(DEBORIGSRC) -C $(DEBBUILDDIR)
|
||||||
$(Q) echo 9 > $(DEBDIR)/compat
|
$(Q) mkdir $(DEBBUILDDIR)/$(DEBORIGSRCDIR)/debian
|
||||||
$(Q) cp $(TMPLDIR)/control $(DEBDIR)/control
|
$(Q) sed -e 's/__VERSION__/$(DEBVERSION)/g' $(DEBTMPLDIR)/rules > $(DEBBUILDDIR)/$(DEBORIGSRCDIR)/debian/rules
|
||||||
$(Q) dpkg-buildpackage -us -uc -b
|
$(Q) sed -e 's/__VERSION__/$(DEBVERSION)/g' -e 's/__DATE__/$(DEBDATE)/g' $(DEBTMPLDIR)/changelog > $(DEBBUILDDIR)/$(DEBORIGSRCDIR)/debian/changelog
|
||||||
|
$(Q) echo 9 > $(DEBBUILDDIR)/$(DEBORIGSRCDIR)/debian/compat
|
||||||
|
$(Q) cp $(DEBTMPLDIR)/control $(DEBBUILDDIR)/$(DEBORIGSRCDIR)/debian/control
|
||||||
|
$(Q) cd $(DEBBUILDDIR)/$(DEBORIGSRCDIR) && dpkg-buildpackage -us -uc
|
||||||
|
$(Q) mv $(DEBBUILDDIR)/*.dsc $(BUILDDIR)
|
||||||
|
$(Q) mv $(DEBBUILDDIR)/*.changes $(BUILDDIR)
|
||||||
|
$(Q) mv $(DEBBUILDDIR)/*.buildinfo $(BUILDDIR)
|
||||||
|
$(Q) mv $(DEBBUILDDIR)/*.deb $(BUILDDIR)
|
||||||
|
$(Q) mv $(DEBBUILDDIR)/*.tar.* $(BUILDDIR)
|
||||||
|
|
||||||
|
.PHONY: rpm
|
||||||
|
rpm:
|
||||||
|
$(Q) mkdir -p $(RPMBUILDDIR)/SPECS
|
||||||
|
$(Q) mkdir -p $(RPMBUILDDIR)/SOURCES
|
||||||
|
$(Q) sed -e 's/__VERSION__/$(RPMVERSION)/g' -e 's/__DATE__/$(RPMDATE)/g' $(RPMTMPLDIR)/lume.spec > $(RPMBUILDDIR)/SPECS/lume.spec
|
||||||
|
$(Q) git archive --format tar --prefix $(RPMORIGSRCDIR)/ $(LUME_VERSION) | xz > $(RPMBUILDDIR)/SOURCES/$(RPMORIGSRC)
|
||||||
|
$(Q) rpmbuild --define "_topdir $(RPMBUILDDIR)" -ba $(RPMBUILDDIR)/SPECS/lume.spec
|
||||||
|
$(Q) mv $(RPMBUILDDIR)/RPMS/*/*.rpm $(BUILDDIR)
|
||||||
|
$(Q) mv $(RPMBUILDDIR)/SRPMS/*.rpm $(BUILDDIR)
|
||||||
|
|
||||||
deb-clean:
|
deb-clean:
|
||||||
$(Q) rm -rf $(CURDIR)/debian
|
$(Q) rm -rf $(DEBBUILDDIR)
|
||||||
|
$(Q) rm -f $(BUILDDIR)/*.dsc
|
||||||
|
$(Q) rm -f $(BUILDDIR)/*.changes
|
||||||
|
$(Q) rm -f $(BUILDDIR)/*.buildinfo
|
||||||
|
$(Q) rm -f $(BUILDDIR)/*.deb
|
||||||
|
$(Q) rm -f $(BUILDDIR)/*.tar.*
|
||||||
|
|
||||||
|
rpm-clean:
|
||||||
|
$(Q) rm -rf $(RPMBUILDDIR)
|
||||||
|
$(Q) rm -f $(BUILDDIR)/*.rpm
|
||||||
|
@ -10,8 +10,8 @@ PACKAGEVERSION = $(VERSION)
|
|||||||
override_dh_auto_clean:
|
override_dh_auto_clean:
|
||||||
override_dh_auto_test:
|
override_dh_auto_test:
|
||||||
override_dh_auto_build:
|
override_dh_auto_build:
|
||||||
override_dh_auto_install:
|
|
||||||
make
|
make
|
||||||
|
override_dh_auto_install:
|
||||||
make install DESTDIR=debian/lume
|
make install DESTDIR=debian/lume
|
||||||
|
|
||||||
override_dh_gencontrol:
|
override_dh_gencontrol:
|
||||||
|
32
packaging/rpm/lume.spec
Normal file
32
packaging/rpm/lume.spec
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
Name: lume
|
||||||
|
Version: __VERSION__
|
||||||
|
Release: 1%{?dist}
|
||||||
|
Summary: A CLI tool for the LIFX HTTP API
|
||||||
|
|
||||||
|
License: MPL
|
||||||
|
URL: https://git.kill0.net/chill9/lume
|
||||||
|
Source: %{name}-%{version}.tar.xz
|
||||||
|
|
||||||
|
%global debug_package %{nil}
|
||||||
|
|
||||||
|
%description
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup
|
||||||
|
|
||||||
|
%build
|
||||||
|
%make_build
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install DESTDIR=%{buildroot}
|
||||||
|
|
||||||
|
|
||||||
|
%files
|
||||||
|
%{_bindir}/lume
|
||||||
|
%license LICENSE
|
||||||
|
/usr/share/lume/lumerc
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* __DATE__ Ryan Cavicchioni <ryan@cavi.cc>
|
||||||
|
- lume __VERSION__
|
Reference in New Issue
Block a user