diff options
author | Max Romanov <max.romanov@nginx.com> | 2017-12-01 16:59:41 +0300 |
---|---|---|
committer | Max Romanov <max.romanov@nginx.com> | 2017-12-01 16:59:41 +0300 |
commit | cdf900cf2c98b4e3fad11e8b69cd2135f2c306c7 (patch) | |
tree | da2ed9180008803fcc0500c28191d8c2643df891 | |
parent | 40eb1f8b9b2a76d76ef6a4a094bf8192a44cbe41 (diff) | |
download | unit-cdf900cf2c98b4e3fad11e8b69cd2135f2c306c7.tar.gz unit-cdf900cf2c98b4e3fad11e8b69cd2135f2c306c7.tar.bz2 |
Packaging changes for updated Go package.
- package name changed to 'nginx/unit';
- source files installed in /usr/share/gocode;
- rpm and deb go packages made noarch.
-rw-r--r-- | pkg/deb/Makefile | 6 | ||||
-rw-r--r-- | pkg/deb/Makefile.go | 9 | ||||
-rw-r--r-- | pkg/deb/Makefile.go17 | 13 | ||||
-rw-r--r-- | pkg/deb/Makefile.go18 | 13 | ||||
-rw-r--r-- | pkg/deb/debian.module/control-noarch.in | 23 | ||||
-rwxr-xr-x | pkg/deb/debian.module/rules-noarch.in | 93 | ||||
-rw-r--r-- | pkg/deb/debian.module/unit.example-go-app | 2 | ||||
-rw-r--r-- | pkg/deb/debian/unit.example-go-app | 2 | ||||
-rw-r--r-- | pkg/rpm/Makefile.go | 13 | ||||
-rw-r--r-- | pkg/rpm/rpmbuild/SOURCES/unit.example-go-app | 2 |
10 files changed, 140 insertions, 36 deletions
diff --git a/pkg/deb/Makefile b/pkg/deb/Makefile index fb31ad2b..6fdb667d 100644 --- a/pkg/deb/Makefile +++ b/pkg/deb/Makefile @@ -144,7 +144,7 @@ debuild-%: debuild/unit_$(VERSION).orig.tar.gz ../../docs/changes.xml > $@/$(SRCDIR)/debian/changelog cp debian/copyright debuild-$*/$(SRCDIR)/debian/ @{ \ - set -e ; \ + set -e ; \ for src in $(MODULE_SOURCES_$*); do \ cp debian.module/$${src} $@/$(SRCDIR)/debian/ ; \ done ; \ @@ -152,7 +152,7 @@ debuild-%: debuild/unit_$(VERSION).orig.tar.gz ../../docs/changes.xml prebuild=`echo "$$MODULE_PREBUILD_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \ preinstall=`echo "$$MODULE_PREINSTALL_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \ post=`echo "$$MODULE_POST_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \ - cat debian.module/control.in | sed \ + cat debian.module/$(if $(MODULE_NOARCH_$*),control-noarch.in,control.in) | sed \ -e "s#%%NAME%%#unit-$(MODULE_SUFFIX_$*)#g" \ -e "s#%%SUMMARY%%#$(MODULE_SUMMARY_$*)#g" \ -e "s#%%CODENAME%%#$(CODENAME)#g" \ @@ -163,7 +163,7 @@ debuild-%: debuild/unit_$(VERSION).orig.tar.gz ../../docs/changes.xml -e "s#%%MODULE_BUILD_DEPENDS%%#$(MODULE_BUILD_DEPENDS_$*)#g" \ -e "s#%%MODULE_DEPENDS%%#$(MODULE_DEPENDS_$*)#g" \ > $@/$(SRCDIR)/debian/control ; \ - cat debian.module/rules.in | sed \ + cat debian.module/$(if $(MODULE_NOARCH_$*),rules-noarch.in,rules.in) | sed \ -e "s#%%NAME%%#unit-$(MODULE_SUFFIX_$*)#g" \ -e "s#%%CODENAME%%#$(CODENAME)#g" \ -e "s#%%UNIT_VERSION%%#$(VERSION)#g" \ diff --git a/pkg/deb/Makefile.go b/pkg/deb/Makefile.go index d960a68d..53ed6b4c 100644 --- a/pkg/deb/Makefile.go +++ b/pkg/deb/Makefile.go @@ -6,7 +6,7 @@ MODULE_SUMMARY_go= Go module for NGINX Unit MODULE_VERSION_go= $(VERSION) MODULE_RELEASE_go= 1 -MODULE_CONFARGS_go= go --go-path=\$$(GOROOT) +MODULE_CONFARGS_go= go --go-path=/usr/share/gocode MODULE_MAKEARGS_go= go MODULE_INSTARGS_go= go-install @@ -18,10 +18,7 @@ BUILD_DEPENDS+= golang MODULE_BUILD_DEPENDS_go=,golang MODULE_DEPENDS_go=,golang -define MODULE_DEFINITIONS_go -GOROOT = $(shell go env GOROOT) -endef -export MODULE_DEFINITIONS_go +MODULE_NOARCH_go= true define MODULE_PREINSTALL_go mkdir -p debian/unit-go/usr/share/doc/unit-go/examples/go-app @@ -38,7 +35,7 @@ The $(MODULE_SUMMARY_go) has been installed. To check out the sample app, run these commands: - go build -o /tmp/go-app /usr/share/doc/unit-go/examples/go-app/let-my-people.go + GOPATH=/usr/share/gocode go build -o /tmp/go-app /usr/share/doc/unit-go/examples/go-app/let-my-people.go sudo service unit restart sudo service unit loadconfig /usr/share/doc/unit-go/examples/unit.config curl http://localhost:8500/ diff --git a/pkg/deb/Makefile.go17 b/pkg/deb/Makefile.go17 index 7fbfd360..8c2ee1b2 100644 --- a/pkg/deb/Makefile.go17 +++ b/pkg/deb/Makefile.go17 @@ -6,7 +6,7 @@ MODULE_SUMMARY_go17= Go 1.7 module for NGINX Unit MODULE_VERSION_go17= $(VERSION) MODULE_RELEASE_go17= 1 -MODULE_CONFARGS_go17= go --go=/usr/lib/go-1.7/bin/go --go-path=\$$(GOROOT) +MODULE_CONFARGS_go17= go --go=/usr/lib/go-1.7/bin/go --go-path=/usr/share/gocode MODULE_MAKEARGS_go17= /usr/lib/go-1.7/bin/go MODULE_INSTARGS_go17= /usr/lib/go-1.7/bin/go-install @@ -15,13 +15,10 @@ MODULE_SOURCES_go17= unit.example-go-app \ BUILD_DEPENDS+= golang-1.7 -MODULE_BUILD_DEPENDS_go=,golang-1.7 -MODULE_DEPENDS_go=,golang-1.7 +MODULE_BUILD_DEPENDS_go17=,golang-1.7 +MODULE_DEPENDS_go17=,golang-1.7 -define MODULE_DEFINITIONS_go17 -GOROOT = \$$(shell /usr/lib/go-1.7/bin/go env GOROOT) -endef -export MODULE_DEFINITIONS_go17 +MODULE_NOARCH_go17= true define MODULE_PREINSTALL_go17 mkdir -p debian/unit-go1.7/usr/share/doc/unit-go1.7/examples/go-app @@ -38,7 +35,7 @@ The $(MODULE_SUMMARY_go17) has been installed. To check out the sample app, run these commands: - /usr/lib/go-1.7/bin/go build -o /tmp/go1.7-app /usr/share/doc/unit-go1.7/examples/go-app/let-my-people.go + GOPATH=/usr/share/gocode /usr/lib/go-1.7/bin/go build -o /tmp/go1.7-app /usr/share/doc/unit-go1.7/examples/go-app/let-my-people.go sudo service unit restart sudo service unit loadconfig /usr/share/doc/unit-go1.7/examples/unit.config curl http://localhost:8500/ diff --git a/pkg/deb/Makefile.go18 b/pkg/deb/Makefile.go18 index 4f15bbc9..2f427da4 100644 --- a/pkg/deb/Makefile.go18 +++ b/pkg/deb/Makefile.go18 @@ -6,7 +6,7 @@ MODULE_SUMMARY_go18= Go 1.8 module for NGINX Unit MODULE_VERSION_go18= $(VERSION) MODULE_RELEASE_go18= 1 -MODULE_CONFARGS_go18= go --go=/usr/lib/go-1.8/bin/go --go-path=\$$(GOROOT) +MODULE_CONFARGS_go18= go --go=/usr/lib/go-1.8/bin/go --go-path=/usr/share/gocode MODULE_MAKEARGS_go18= /usr/lib/go-1.8/bin/go MODULE_INSTARGS_go18= /usr/lib/go-1.8/bin/go-install @@ -15,13 +15,10 @@ MODULE_SOURCES_go18= unit.example-go-app \ BUILD_DEPENDS+= golang-1.8 -MODULE_BUILD_DEPENDS_go=,golang-1.8 -MODULE_DEPENDS_go=,golang-1.8 +MODULE_BUILD_DEPENDS_go18=,golang-1.8 +MODULE_DEPENDS_go18=,golang-1.8 -define MODULE_DEFINITIONS_go18 -GOROOT = \$$(shell /usr/lib/go-1.8/bin/go env GOROOT) -endef -export MODULE_DEFINITIONS_go18 +MODULE_NOARCH_go18= true define MODULE_PREINSTALL_go18 mkdir -p debian/unit-go1.8/usr/share/doc/unit-go1.8/examples/go-app @@ -38,7 +35,7 @@ The $(MODULE_SUMMARY_go18) has been installed. To check out the sample app, run these commands: - /usr/lib/go-1.8/bin/go build -o /tmp/go1.8-app /usr/share/doc/unit-go1.8/examples/go-app/let-my-people.go + GOPATH=/usr/share/gocode /usr/lib/go-1.8/bin/go build -o /tmp/go1.8-app /usr/share/doc/unit-go1.8/examples/go-app/let-my-people.go sudo service unit restart sudo service unit loadconfig /usr/share/doc/unit-go1.8/examples/unit.config curl http://localhost:8500/ diff --git a/pkg/deb/debian.module/control-noarch.in b/pkg/deb/debian.module/control-noarch.in new file mode 100644 index 00000000..e22bb49a --- /dev/null +++ b/pkg/deb/debian.module/control-noarch.in @@ -0,0 +1,23 @@ +Source: %%NAME%% +Section: admin +Priority: extra +Maintainer: Andrei Belov <defan@nginx.com> +Build-Depends: debhelper (>= 9), + linux-libc-dev%%MODULE_BUILD_DEPENDS%% +Standards-Version: 3.9.5 +Homepage: https://unit.nginx.org + +Package: %%NAME%% +Section: admin +Architecture: all +Depends: lsb-base, + ${misc:Depends}, + unit (= %%UNIT_VERSION%%-%%UNIT_RELEASE%%~%%CODENAME%%)%%MODULE_DEPENDS%% +Description: %%SUMMARY%% + NGINX Unit is a runtime and delivery environment for modern distributed + applications. It runs the application code in multiple languages + (PHP, Python, Go, etc.), and tightly couples it with traffic delivery + in and out of the application. Take this application server and proxy + directly in the cloud / container environments and fully control your app + dynamically via an API. + This package contains %%SUMMARY%%. diff --git a/pkg/deb/debian.module/rules-noarch.in b/pkg/deb/debian.module/rules-noarch.in new file mode 100755 index 00000000..d74420c1 --- /dev/null +++ b/pkg/deb/debian.module/rules-noarch.in @@ -0,0 +1,93 @@ +#!/usr/bin/make -f + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +BUILDDIR_unit = $(CURDIR)/debian/build-unit +BUILDDIR_unit_debug = $(CURDIR)/debian/build-unit-debug +INSTALLDIR = $(CURDIR)/debian/%%NAME%% +BASEDIR = $(CURDIR) + +%%MODULE_DEFINITIONS%% + +config.env.%: + dh_testdir + mkdir -p $(BUILDDIR_$*) + cp -Pa $(CURDIR)/auto $(BUILDDIR_$*)/ + cp -Pa $(CURDIR)/configure $(BUILDDIR_$*)/ + cp -Pa $(CURDIR)/src $(BUILDDIR_$*)/ + cp -Pa $(CURDIR)/test $(BUILDDIR_$*)/ + touch $@ + +configure.unit: config.env.unit + cd $(BUILDDIR_unit) && \ + ./configure \ + %%CONFIGURE_ARGS%% \ + --modules=/usr/lib/unit/modules && \ + ./configure %%MODULE_CONFARGS%% + touch $@ + +configure.unit_debug: config.env.unit_debug + cd $(BUILDDIR_unit_debug) && \ + ./configure \ + %%CONFIGURE_ARGS%% \ + --modules=/usr/lib/unit/debug-modules \ + --debug && \ + ./configure %%MODULE_CONFARGS%% + touch $@ + +build-arch.%: configure.% + dh_testdir + $(MAKE) -C $(BUILDDIR_$*) %%MODULE_MAKEARGS%% + touch $@ + +build-indep: + dh_testdir + touch $@ + +build-arch: build-arch.unit build-arch.unit_debug + dh_testdir + touch $@ + +build: build-arch build-indep + dh_testdir + touch $@ + +clean: + dh_testdir + dh_testroot + dh_clean + find $(CURDIR) -maxdepth 1 -size 0 -delete + +install: build + dh_testdir + dh_testroot + dh_prep + dh_installdirs + dh_installinit + dh_installlogrotate +%%MODULE_PREINSTALL%% + cd $(BUILDDIR_unit) && \ + DESTDIR=$(INSTALLDIR) make %%MODULE_INSTARGS%% + cd $(BUILDDIR_unit_debug) && \ + DESTDIR=$(INSTALLDIR) make %%MODULE_INSTARGS%% + +binary-indep: build install + dh_testdir + dh_testroot + dh_installdocs + dh_installchangelogs + dh_link + dh_compress + dh_fixperms + dh_installdeb + dh_perl + dh_gencontrol + dh_md5sums + dh_builddeb + +binary-arch: install + +binary: binary-indep binary-arch + +.PHONY: clean binary-indep binary-arch binary install build diff --git a/pkg/deb/debian.module/unit.example-go-app b/pkg/deb/debian.module/unit.example-go-app index ef2568ec..7ca0c9fd 100644 --- a/pkg/deb/debian.module/unit.example-go-app +++ b/pkg/deb/debian.module/unit.example-go-app @@ -3,7 +3,7 @@ package main import ( "fmt" "net/http" - "unit" + "nginx/unit" ) func handler(w http.ResponseWriter, r *http.Request) { diff --git a/pkg/deb/debian/unit.example-go-app b/pkg/deb/debian/unit.example-go-app index ef2568ec..7ca0c9fd 100644 --- a/pkg/deb/debian/unit.example-go-app +++ b/pkg/deb/debian/unit.example-go-app @@ -3,7 +3,7 @@ package main import ( "fmt" "net/http" - "unit" + "nginx/unit" ) func handler(w http.ResponseWriter, r *http.Request) { diff --git a/pkg/rpm/Makefile.go b/pkg/rpm/Makefile.go index 9dfbca77..37cf53cb 100644 --- a/pkg/rpm/Makefile.go +++ b/pkg/rpm/Makefile.go @@ -5,7 +5,7 @@ MODULE_SUMMARY_go= Go module for NGINX Unit MODULE_VERSION_go= $(VERSION) MODULE_RELEASE_go= 1 -MODULE_CONFARGS_go= go --go-path=%{goroot} +MODULE_CONFARGS_go= go --go-path=%{gopath} MODULE_MAKEARGS_go= go MODULE_INSTARGS_go= go-install @@ -15,11 +15,9 @@ MODULE_SOURCES_go= unit.example-go-app \ BUILD_DEPENDS+= golang define MODULE_DEFINITIONS_go -%define goroot %(go env GOROOT) -%define goos %(go env GOOS) -%define goarch %(go env GOARCH) BuildRequires: golang +BuildArch: noarch endef export MODULE_DEFINITIONS_go @@ -36,9 +34,8 @@ endef export MODULE_PREINSTALL_go define MODULE_FILES_go -%dir %{goroot}/src/unit -%{goroot}/src/unit/* -%{goroot}/pkg/%{goos}_%{goarch}/unit.a +%dir %{gopath}/src/nginx/unit +%{gopath}/src/nginx/unit/* endef export MODULE_FILES_go @@ -50,7 +47,7 @@ The $(MODULE_SUMMARY_go) has been installed. To check the sample app, run these commands: - go build -o /tmp/go-app /usr/share/doc/unit-go/examples/go-app/let-my-people.go + GOPATH=/usr/share/gocode go build -o /tmp/go-app /usr/share/doc/unit-go/examples/go-app/let-my-people.go sudo service unit start sudo service unit loadconfig /usr/share/doc/unit-go/examples/unit.config curl http://localhost:8500/ diff --git a/pkg/rpm/rpmbuild/SOURCES/unit.example-go-app b/pkg/rpm/rpmbuild/SOURCES/unit.example-go-app index ef2568ec..7ca0c9fd 100644 --- a/pkg/rpm/rpmbuild/SOURCES/unit.example-go-app +++ b/pkg/rpm/rpmbuild/SOURCES/unit.example-go-app @@ -3,7 +3,7 @@ package main import ( "fmt" "net/http" - "unit" + "nginx/unit" ) func handler(w http.ResponseWriter, r *http.Request) { |