Select Git revision
Makefile 25.33 KiB
export JAVAC = javac
export JAR = jar
JAVA = java
JAVADOC = javadoc
MAKE = make -s
TAR = tar
GZIP = gzip
GRADLE_NO_TEST = -x test
GRADLE_OPTIONS = --parallel
#GRADLE_OPTIONS =
GRADLE = $(shell which gradle)
GRADLE_VERSION_NEEDED = 3.3
ERROR_MSG = printf "$(COLOR)\nBuild with gradle failed. Falling back to regular javac command...\n$(RESET)"
ifeq "$(GRADLE)" ""
ERROR_MSG = echo "Gradle was not found. Falling back to regular javac command...\n"
GRADLE = false && echo >/dev/null
else
GRADLE_VERSION := $(shell $(GRADLE) --version | grep "^Gradle" | awk '{print $$2}')
GRADLE_VERSION_MIN := $(shell printf "%s\n%s\n" "$(GRADLE_VERSION_NEEDED)" "$(GRADLE_VERSION)"|sort -n 2>/dev/null|head -n1)
ifneq "$(GRADLE_VERSION_NEEDED)" "$(GRADLE_VERSION_MIN)"
ERROR_MSG = echo "$(COLOR)Gradle $(GRADLE_VERSION) is too old. Needs at least $(GRADLE_VERSION_NEEDED). Falling back to regular javac command...\n$(RESET)"
GRADLE = false && echo >/dev/null
endif
endif
export COLOR = $(shell tput setaf 1)
export RESET = $(shell tput sgr0)
PREFIX = [$(COLOR)BASE$(RESET)]
export TTOOL_PATH := $(shell /bin/pwd)
define HELP_message
Compilation targets:
--------------------
make all Build TTool and the jar of companion software.
make ttool Build TTool only
Usual targets:
--------------
make (help) Print this help.
make documentation Generate the documentation of java classes using javadoc.
make release Prepare a new release for the website.
It produces the release.tgz and releaseWithSrc.tgz files.
make test Run tests on TTool.
make publish_jar Build TTool and upload the resulting archive.
!!! Must have the right ssh key installed for this !!!
make install Install TTool, the jar of companion software and the runtime
dependencies to $$DESTDIR/bin. By default, install to
$(TTOOL_PATH)/bin.
make clean Clean the repository from compilation artifacts.
make ultraclean Clean the repository from binaries and compilation artifacts.
make ttooljavac Build TTool only with javac
make ttoolnotest Build TTool with gradle, but do not execute test. Performs the install
make allnotest Builld all apps, but do not execute tests. Performs the install
make internalhelp Generate the help of TTool in HTML format
Other targets:
--------------
make preinstall Generate a preinstall version of TTool for Linux, Windows and
MacOS and publish them on the website of TTool (hidden link)
!!! Must have the right ssh key installed for this !!!
make git Update the build number.
Please report bugs or suggestions of improvements to:
ttool.telecom-paristech.fr/support.html