54 lines
938 B
Makefile
54 lines
938 B
Makefile
# user overwritable variables
|
|
|
|
PREFIX=/usr/local
|
|
|
|
# version
|
|
|
|
VERSION_MAJOR=0
|
|
VERSION_MINOR=1
|
|
|
|
VERSION=${VERSION_MAJOR}.${VERSION_MINOR}
|
|
|
|
#
|
|
# generic targets
|
|
#
|
|
|
|
all: tyche libtyche.a libtyche.so.${VERSION}
|
|
|
|
check: tyche-test
|
|
./tyche-test
|
|
|
|
clean:
|
|
rm -f tyche libtyche.a libtyche.so* tyche-test src/tyche.o src/tests.o lib/vm.o
|
|
|
|
install: tyche libtyche.a libtyche.so.${VERSION}
|
|
install libtyche.a libtyche.so.${VERSION} ${PREFIX}/lib
|
|
install tyche ${PREFIX}/bin
|
|
ln -s libfoo.so.${VERSION} libfoo.so.${VERSION_MAJOR}
|
|
ln -s libfoo.so.${VERSION_MAJOR} libfoo.so
|
|
|
|
uninstall:
|
|
rm -f ${PREFIX}/lib/libtyche.* ${PREFIX}/bin/tyche
|
|
|
|
#
|
|
# flags/options
|
|
#
|
|
|
|
CFLAGS=-fPIC
|
|
LIBS=
|
|
|
|
#
|
|
# executable files
|
|
#
|
|
|
|
tyche: src/tyche.o libtyche.a
|
|
$(CC) -o $@ $^ ${LIBS}
|
|
|
|
tyche-test: src/tests.o libtyche.a
|
|
$(CC) -o $@ $^ ${LIBS}
|
|
|
|
libtyche.a: lib/vm.o
|
|
ar rcs $@ $^
|
|
|
|
libtyche.so.${VERSION}: lib/vm.o
|
|
$(CC) -shared -o $@ -Wl,-soname,libfoo.so.${VERSION_MAJOR} $^
|