# Copyright 2020 Alyssa Ross # # This file is part of pushmail. # # pushmail is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # pushmail is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with pushmail; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # Linking pushmail statically or dynamically with other modules is # making a combined work based on pushmail. Thus, the terms and # conditions of the GNU General Public License cover the whole # combination. # # In addition, as a special exception, the copyright holders of # pushmail give you permission to combine pushmail with free software # programs or libraries that are released under the GNU LGPL and with # code included in the standard release of OpenSSL under the OpenSSL # License or the Original SSLeay License (or modified versions of such # code, with unchanged license). You may copy and distribute such a # system following the terms of the GNU GPL for pushmail and the # licenses of the other code concerned, provided that you include the # source code of that other code when and as the GNU GPL requires # distribution of source code. # # Note that people who make modified versions of pushmail are not # obligated to grant this special exception for their modified # versions; it is their choice whether to do so. The GNU General # Public License gives permission to release a modified version # without this exception; this exception also makes it possible to # release a modified version which carries forward this exception. CARGO = cargo INSTALL = install INSTALL_PROGRAM = $(INSTALL) MKDIR_P = mkdir -p prefix = /usr/local exec_prefix = $(prefix) bindir = $(exec_prefix)/bin all: release .PHONY: all cargo-deps: vendor/github_schema.graphql src/commit_pr.graphql .PHONY: cargo-deps target/release/pushmail: cargo-deps $(CARGO) build --release target/debug/pushmail: cargo-deps $(CARGO) build release: target/release/pushmail .PHONY: release debug: target/debug/pushmail .PHONY: debug check: cargo-deps $(CARGO) test .PHONY: check install-dirs: $(MKDIR_P) $(DESTDIR)$(bindir) .PHONY: install-dirs install: install-dirs $(INSTALL_PROGRAM) target/release/pushmail $(DESTDIR)$(bindir)/pushmail .PHONY: install uninstall: rm -f $(DESTDIR)$(bindir)/pushmail .PHONY: uninstall