98 lines
2.6 KiB
Makefile
98 lines
2.6 KiB
Makefile
AUTOMAKE_OPTIONS = foreign no-dependencies no-installinfo
|
|
|
|
|
|
GOFLAGS= -v
|
|
bin_PROGRAMS = mstorectl
|
|
sbin_PROGRAMS = mstored
|
|
|
|
mstorectl_SOURCES = \
|
|
cmd/mstorectl/filecmd.go \
|
|
cmd/mstorectl/imagecmd.go \
|
|
cmd/mstorectl/accountcmd.go \
|
|
cmd/mstorectl/grantcmd.go \
|
|
cmd/mstorectl/main.go
|
|
|
|
mstored_SOURCES = \
|
|
cmd/mstored/main.go
|
|
|
|
mstorectl$(EXEEXT): $(mstorectl_SOURCES)
|
|
env CGO_ENABLED=0 $(GO) build $(GOFLAGS) -o mstorectl$(EXEEXT) $(mstorectl_SOURCES)
|
|
|
|
mstored$(EXEEXT): $(mstored_SOURCES)
|
|
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mstored$(EXEEXT) $(mstored_SOURCES)
|
|
|
|
run: $(mstored_SOURCES)
|
|
cd cmd/mstored && env CGO_ENABLED=1 $(GO) run .
|
|
|
|
CWD=$(shell pwd)
|
|
|
|
format:
|
|
@dirs=$$($(FIND) $(CWD) -name '*.go' | $(XARGS) -n1 dirname | $(SORT) | $(UNIQ)); \
|
|
for dir in $$dirs;do \
|
|
(echo "====$$dir===="; cd $$dir && $(GO) fmt .); \
|
|
done
|
|
|
|
.PHONY: test
|
|
test:
|
|
cd test && $(GO) test -v .
|
|
|
|
|
|
DIST_DIR= $(shell pwd)/DIST
|
|
|
|
IMAGE_REPO = localhost
|
|
IMAGE_NAME = $(PACKAGE_NAME):$(PACKAGE_VERSION)
|
|
IMAGE_TARNAME = $(PACKAGE_NAME)-$(PACKAGE_VERSION).img
|
|
IMAGE_CONTAINERFILE = Containerfile
|
|
|
|
image:: build-image
|
|
build-image: clean
|
|
$(GO) mod vendor
|
|
mkdir -p $(DIST_DIR)
|
|
$(SUDO) $(PODMAN) build -t $(IMAGE_REPO)/$(IMAGE_NAME) -f $(IMAGE_CONTAINERFILE) .
|
|
rm -f $(DIST_DIR)/$(IMAGE_TARNAME)
|
|
$(SUDO) $(PODMAN) image save $(IMAGE_REPO)/$(IMAGE_NAME) --format oci-archive \
|
|
-o $(DIST_DIR)/$(IMAGE_TARNAME)
|
|
username=$$(whoami); \
|
|
$(SUDO) chown $$username $(DIST_DIR)/$(IMAGE_TARNAME)
|
|
rm -rf vendor
|
|
|
|
CHART_NAME = $(PACKAGE_NAME)-$(PACKAGE_VERSION).tgz
|
|
|
|
chart:: build-chart
|
|
build-chart:
|
|
mkdir -p $(DIST_DIR)
|
|
$(HELM) package --destination $(DIST_DIR) chart/
|
|
|
|
|
|
FREEBSD_LOCALBASE = /usr/local
|
|
FREEBSD_RCDIR = $(FREEBSD_LOCALBASE)/etc/rc.d
|
|
LINUX_SYSTEMDDIR = /lib/systemd/system
|
|
|
|
install-data-local:
|
|
test -z $(DESTDIR)$(srv_confdir) || $(MKDIR_P) $(DESTDIR)$(srv_confdir)
|
|
test -z $(DESTDIR)$(srv_logdir) || $(MKDIR_P) $(DESTDIR)$(srv_logdir)
|
|
test -z $(DESTDIR)$(srv_rundir) || $(MKDIR_P) $(DESTDIR)$(srv_rundir)
|
|
test -z $(DESTDIR)$(srv_datadir) || $(MKDIR_P) $(DESTDIR)$(srv_datadir)
|
|
if FREEBSD_OS
|
|
test -z $(DESTDIR)$(FREEBSD_RCDIR) || $(MKDIR_P) $(DESTDIR)$(FREEBSD_RCDIR)
|
|
$(INSTALL_DATA) initrc/mstored $(DESTDIR)$(FREEBSD_RCDIR)
|
|
chmod a+x $(DESTDIR)$(FREEBSD_RCDIR)/mstored
|
|
endif
|
|
if LINUX_OS
|
|
if SYSTEMD
|
|
test -z $(DESTDIR)$(LINUX_SYSTEMDDIR) || $(MKDIR_P) $(DESTDIR)$(LINUX_SYSTEMDDIR)
|
|
$(INSTALL_DATA) initrc/mstored.service $(DESTDIR)$(LINUX_SYSTEMDDIR)
|
|
endif
|
|
endif
|
|
|
|
clean-local:
|
|
$(FIND) $(CWD) -name '*~' | $(XARGS) rm -f
|
|
rm -rf autom4te.cache
|
|
rm -f cmd/mstored/istored
|
|
rm -f cmd/mstorectl/mstorectl
|
|
rm -rf tmp/
|
|
|
|
distclean-local:
|
|
rm -rf autom4te.cache
|
|
rm -rf $(DIST_DIR)
|