Making Go package source distributable and renaming to 'nginx/unit'.

All header files are copied to Go package sources.  As the result,
package can be (re-)build when required.

This closes #23 issue on GitHub.
This commit is contained in:
Max Romanov
2017-12-01 16:57:30 +03:00
parent ffb1c68609
commit 40eb1f8b9b
9 changed files with 53 additions and 108 deletions

View File

@@ -85,41 +85,37 @@ fi
cat << END >> $NXT_MAKEFILE
.PHONY: ${NXT_GO} ${NXT_GO}-install ${NXT_GO}-uninstall
all: ${NXT_GO}
NXT_ROOT = `pwd`
.PHONY: ${NXT_GO}
.PHONY: ${NXT_GO}-install
.PHONY: ${NXT_GO}-install-src
.PHONY: ${NXT_GO}-install-build
.PHONY: ${NXT_GO}-uninstall
GOPATH = $NXT_GO_PATH
GOOS = `${NXT_GO} env GOOS`
GOARCH = `${NXT_GO} env GOARCH`
${NXT_GO}: $NXT_BUILD_DIR/nxt_go_gen.h
$NXT_BUILD_DIR/nxt_go_gen.h: src/go/unit/*.go
GOPATH=`pwd` \\
CGO_CPPFLAGS="-DNXT_CONFIGURE \\
-I`pwd`/src" \\
${NXT_GO} build -o $NXT_BUILD_DIR/nxt_go_gen.a \\
--buildmode=c-archive go/unit
NXT_GO_DST = ${NXT_GO_PATH%%:*}
install: ${NXT_GO}-install
${NXT_GO}-install: ${NXT_GO}
install -d \$(DESTDIR)\$(GOPATH)/src/unit
install -p -m644 ./src/go/unit/* \$(DESTDIR)\$(GOPATH)/src/unit/
CGO_CFLAGS="-I\$(NXT_ROOT)/$NXT_BUILD_DIR -I\$(NXT_ROOT)/src" \\
CGO_LDFLAGS="-L\$(NXT_ROOT)/$NXT_BUILD_DIR ${NXT_LIBRT}" \\
GOPATH=\$(DESTDIR)\$(GOPATH) \\
${NXT_GO} install -v unit
${NXT_GO}:
${NXT_GO}-install: ${NXT_GO}-install-build
${NXT_GO}-install-src:
install -d \$(DESTDIR)\$(NXT_GO_DST)/src/nginx/unit
install -p -m644 ./src/*.h ./build/*.h ./src/go/unit/* \
\$(DESTDIR)\$(NXT_GO_DST)/src/nginx/unit/
${NXT_GO}-install-build: ${NXT_GO}-install-src
GOPATH=\$(DESTDIR)\$(GOPATH) ${NXT_GO} build nginx/unit
uninstall: ${NXT_GO}-uninstall
${NXT_GO}-uninstall:
rm -rf \$(DESTDIR)\$(GOPATH)/src/unit
rm -f \$(DESTDIR)\$(GOPATH)/pkg/\$(GOOS)_\$(GOARCH)/unit.a
rm -rf \$(DESTDIR)\$(NXT_GO_DST)/src/nginx/unit
rm -rf \$(DESTDIR)\$(NXT_GO_DST)/pkg/\$(GOOS)_\$(GOARCH)/nginx/unit
END