# Makefile for AGrandTech EMS project PROJECT = OMC VERSION = 5GC16.1.1 PLATFORM = amd64 ARMPLATFORM = aarch64 GOPROJECTS = $(HOME)/goprojects BUILDDIR = $(GOPROJECTS)/build DEBBUILDDIR = $(GOPROJECTS)/debbuild RPMBUILDDIR = $(GOPROJECTS)/rpmbuild INSTALLDIR = /usr/local/omc RELEASEDIR = $(GOPROJECTS)/release EMSPROJECT = $(GOPROJECTS)/ems.agt LIBDIR = $(EMSPROJECT)/lib RESTAGENT = restagent CRONTASK = crontask SshSvcBin = sshsvc NBI_ALARM = nbi_alarm NBI_AGENT = nbi_agent 4A_AGENT = 4a_agent RESTAGENTDIR = $(EMSPROJECT)/$(RESTAGENT) CRONTASKDIR = $(EMSPROJECT)/$(CRONTASK) SshSvcDir = $(EMSPROJECT)/$(SshSvcBin) DBSQLSRCDIR = $(EMSPROJECT)/database MISCDIR = $(EMSPROJECT)/misc FrontBuildDir = $(BUILDDIR)/omc/htdocs FrontSrcDir = $(EMSPROJECT)/front ReleaseDebs = $(RELEASEDIR)/debs/$(PLATFORM) BinDir = $(BUILDDIR)/omc/bin BinDir2 = $(BUILDDIR)/omc/run CrontaskSize = 27788951 RestagentSize = 29525312 BinWriterDir = $(HOME)/bin .PHONY: all $(RESTAGENT) $(CRONTASK) all: $(RESTAGENT) $(CRONTASK) cd $(RESTAGENTDIR) go build -o $(RESTAGENT) -v -ldflags "-X 'ems.agt/lib/conifg.Version=$(VERSION)' \ -X '$(LIBDIR)/conifg.BuildTime=`date`' \ -X '$(LIBDIR)/conifg.GoVer=`go version`'" cd $(CRONTASKDIR) go build -o $(CRONTASK) -v -ldflags "-X '$(LIBDIR)/conifg.Version=$(VERSION)' \ -X '$(LIBDIR)/conifg.BuildTime=`date`' \ -X '$(LIBDIR)/conifg.GoVer=`go version`'" clean: rm ./restagent/$(RESTAGENT) ./crontask/$(CRONTASK) dist: tar -zvcPf $(RELEASEDIR)/$(PROJECT)-src-$(VERSION).tar.gz \ ../lib \ ../restagent \ ../crontask \ ../initems \ ../database \ ../docs \ ../misc \ ../config \ --exclude=../restagent/restagent \ --exclude=../crontask/crontask \ --exclude=../initems/initems deb: $(BINNAME) cp -rf ./restagent/$(RESTAGENT) $(BUILDDIR)/omc/bin cp -rf ./crontask/$(CRONTASK) $(BUILDDIR)/omc/bin cp -rf $(MISCDIR)/* $(BUILDDIR)/omc/bin cp -rf $(DBSQLSRCDIR)/*.sql $(BUILDDIR)/omc/etc/db rm -rf $(FrontBuildDir)/* unzip $(FrontSrcDir)/front.zip -d $(FrontBuildDir) >/dev/null chmod 755 $(BUILDDIR)/omc/bin/* chmod 755 $(DEBBUILDDIR)/DEBIAN/* cp -rf $(BUILDDIR)/omc/* $(DEBBUILDDIR)/usr/local/omc/ chmod +x $(DEBBUILDDIR)/usr/local/omc/bin/* cp -rf $(BUILDDIR)/nginx/* $(DEBBUILDDIR)/etc/nginx/conf.d cp -rf $(BUILDDIR)/systemd/*.service $(DEBBUILDDIR)/lib/systemd/system/ dpkg -b $(DEBBUILDDIR) $(ReleaseDebs)/$(PROJECT)-$(VERSION).$(PLATFORM).deb rpm: $(BINNAME) cp -rf ./restagent/$(RESTAGENT) $(BinDir) cp -rf ./crontask/$(CRONTASK) $(BinDir) cp -rf $(SshSvcDir)/$(SshSvcBin) $(BinDir2) $(BinWriterDir)/binWriter $(BinDir)/$(RESTAGENT) $(RestagentSize) $(BinWriterDir)/binWriter $(BinDir)/$(CRONTASK) $(CrontaskSize) cp -rf $(MISCDIR)/ne-hosts $(BinDir) cp -rf ./nbi/$(NBI_ALARM)/bin/$(NBI_ALARM) $(BinDir2) cp -rf ./nbi/$(NBI_AGENT)/bin/$(NBI_AGENT) $(BinDir2) cp -rf ./$(4A_AGENT)/bin/$(4A_AGENT) $(BinDir2) cp -rf $(MISCDIR)/* $(BinDir2) rm -rf $(BinDir2)/ne-hosts cp -rf $(DBSQLSRCDIR)/* $(BUILDDIR)/omc/etc/db rm -rf $(FrontBuildDir)/* unzip $(FrontSrcDir)/front.zip -d $(FrontBuildDir) >/dev/null chmod 755 $(BinDir)/* chmod 755 $(BinDir2)/* cp -rf $(BUILDDIR)/omc $(RPMBUILDDIR)/BUILD cp -rf $(BUILDDIR)/nginx $(RPMBUILDDIR)/BUILD cp -rf $(BUILDDIR)/systemd $(RPMBUILDDIR)/BUILD cd $(RPMBUILDDIR) rpmbuild -bb -D "_topdir $(RPMBUILDDIR)" --sign $(RPMBUILDDIR)/SPECS/omc.spec