github.com/dschalla/mattermost-server@v4.8.1-rc1+incompatible/build/release.mk (about) 1 2 dist: | check-style test package 3 4 build-linux: 5 @echo Build Linux amd64 6 env GOOS=linux GOARCH=amd64 $(GO) install $(GOFLAGS) $(GO_LINKER_FLAGS) ./cmd/platform 7 8 build-osx: 9 @echo Build OSX amd64 10 env GOOS=darwin GOARCH=amd64 $(GO) install $(GOFLAGS) $(GO_LINKER_FLAGS) ./cmd/platform 11 12 build-windows: 13 @echo Build Windows amd64 14 env GOOS=windows GOARCH=amd64 $(GO) install $(GOFLAGS) $(GO_LINKER_FLAGS) ./cmd/platform 15 16 build: build-linux build-windows build-osx 17 18 build-client: 19 @echo Building mattermost web app 20 21 cd $(BUILD_WEBAPP_DIR) && $(MAKE) build 22 23 package-common: 24 @# Remove any old files 25 rm -Rf $(DIST_ROOT) 26 27 @# Create needed directories 28 mkdir -p $(DIST_PATH)/bin 29 mkdir -p $(DIST_PATH)/logs 30 31 @# Resource directories 32 cp -RL config $(DIST_PATH) 33 cp -RL fonts $(DIST_PATH) 34 cp -RL templates $(DIST_PATH) 35 cp -RL i18n $(DIST_PATH) 36 37 @# Disable developer settings 38 sed -i'' -e 's|"ConsoleLevel": "DEBUG"|"ConsoleLevel": "INFO"|g' $(DIST_PATH)/config/config.json 39 sed -i'' -e 's|"SiteURL": "http://localhost:8065"|"SiteURL": ""|g' $(DIST_PATH)/config/config.json 40 41 @# Reset email sending to original configuration 42 sed -i'' -e 's|"SendEmailNotifications": true,|"SendEmailNotifications": false,|g' $(DIST_PATH)/config/config.json 43 sed -i'' -e 's|"FeedbackEmail": "test@example.com",|"FeedbackEmail": "",|g' $(DIST_PATH)/config/config.json 44 sed -i'' -e 's|"SMTPServer": "dockerhost",|"SMTPServer": "",|g' $(DIST_PATH)/config/config.json 45 sed -i'' -e 's|"SMTPPort": "2500",|"SMTPPort": "",|g' $(DIST_PATH)/config/config.json 46 47 @# Package webapp 48 mkdir -p $(DIST_PATH)/client 49 cp -RL $(BUILD_WEBAPP_DIR)/dist/* $(DIST_PATH)/client 50 51 @# Help files 52 ifeq ($(BUILD_ENTERPRISE_READY),true) 53 cp $(BUILD_ENTERPRISE_DIR)/ENTERPRISE-EDITION-LICENSE.txt $(DIST_PATH) 54 else 55 cp build/MIT-COMPILED-LICENSE.md $(DIST_PATH) 56 endif 57 cp NOTICE.txt $(DIST_PATH) 58 cp README.md $(DIST_PATH) 59 60 package-osx: package-common 61 @# Copy binary 62 ifeq ($(BUILDER_GOOS_GOARCH),"darwin_amd64") 63 cp $(GOPATH)/bin/platform $(DIST_PATH)/bin # from native bin dir, not cross-compiled 64 else 65 cp $(GOPATH)/bin/darwin_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir 66 endif 67 @# Package 68 tar -C dist -czf $(DIST_PATH)-$(BUILD_TYPE_NAME)-osx-amd64.tar.gz mattermost 69 @# Cleanup 70 rm -f $(DIST_PATH)/bin/platform 71 72 package-windows: package-common 73 @# Copy binary 74 ifeq ($(BUILDER_GOOS_GOARCH),"windows_amd64") 75 cp $(GOPATH)/bin/platform.exe $(DIST_PATH)/bin # from native bin dir, not cross-compiled 76 else 77 cp $(GOPATH)/bin/windows_amd64/platform.exe $(DIST_PATH)/bin # from cross-compiled bin dir 78 endif 79 @# Package 80 cd $(DIST_ROOT) && zip -9 -r -q -l mattermost-$(BUILD_TYPE_NAME)-windows-amd64.zip mattermost && cd .. 81 @# Cleanup 82 rm -f $(DIST_PATH)/bin/platform.exe 83 84 package-linux: package-common 85 @# Copy binary 86 ifeq ($(BUILDER_GOOS_GOARCH),"linux_amd64") 87 cp $(GOPATH)/bin/platform $(DIST_PATH)/bin # from native bin dir, not cross-compiled 88 else 89 cp $(GOPATH)/bin/linux_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir 90 endif 91 @# Package 92 tar -C dist -czf $(DIST_PATH)-$(BUILD_TYPE_NAME)-linux-amd64.tar.gz mattermost 93 @# Don't clean up native package so dev machines will have an unzipped package available 94 @#rm -f $(DIST_PATH)/bin/platform 95 96 package: package-linux package-windows package-osx