104 lines
3.2 KiB
Makefile
104 lines
3.2 KiB
Makefile
.PHONY: all check clean dist distclean doc install install-headers regressions uninstall
|
|
|
|
BUILD_DIR=@BUILD_DIR@
|
|
SRC_DIR=@SRC_DIR@
|
|
CFLAGS=@CFLAGS@
|
|
VERSION=@VERSION@
|
|
VERSION_MAJOR=@VERSION_MAJOR@
|
|
PREFIX=@PREFIX@
|
|
LIBRARY=@LIBRARY@
|
|
HEADERS=@HEADERS@
|
|
PKGCONFIG_DATA=@LIBRARY@/pkgconfig
|
|
LDNAME=@LDNAME@
|
|
LDNAME_VERSION=@LDNAME_VERSION@
|
|
LDNAME_MAJOR=@LDNAME_MAJOR@
|
|
|
|
all: doc
|
|
$(MAKE) -C src all || exit
|
|
@echo
|
|
@echo
|
|
@echo ---[ Concurrency Kit has built successfully. You may now \"make install\".
|
|
|
|
doc:
|
|
$(MAKE) -C doc all || exit
|
|
@echo ---[ Manual pages are ready for installation.
|
|
|
|
regressions:
|
|
$(MAKE) -C regressions all || exit
|
|
@echo ---[ Regressions have built successfully.
|
|
|
|
check: regressions
|
|
@echo ---[ Executing unit tests...
|
|
$(MAKE) -C regressions check
|
|
@echo ---[ Unit tests have completed successfully.
|
|
|
|
install-headers:
|
|
mkdir -p $(DESTDIR)/$(HEADERS) || exit
|
|
cp $(SRC_DIR)/include/*.h $(DESTDIR)/$(HEADERS) || exit
|
|
chmod 644 $(DESTDIR)/$(HEADERS)/ck_*.h || exit
|
|
mkdir -p $(DESTDIR)$(HEADERS)/gcc || exit
|
|
cp -r $(SRC_DIR)/include/gcc/* $(DESTDIR)/$(HEADERS)/gcc || exit
|
|
cp include/ck_md.h $(DESTDIR)/$(HEADERS)/ck_md.h || exit
|
|
chmod 755 $(DESTDIR)/$(HEADERS)/gcc
|
|
chmod 644 $(DESTDIR)/$(HEADERS)/gcc/ck_*.h $(DESTDIR)/$(HEADERS)/gcc/*/ck_*.h || exit
|
|
mkdir -p $(DESTDIR)$(HEADERS)/spinlock || exit
|
|
cp -r $(SRC_DIR)/include/spinlock/* $(DESTDIR)/$(HEADERS)/spinlock || exit
|
|
chmod 755 $(DESTDIR)/$(HEADERS)/spinlock
|
|
chmod 644 $(DESTDIR)/$(HEADERS)/spinlock/*.h || exit
|
|
|
|
install-so:
|
|
mkdir -p $(DESTDIR)/$(LIBRARY)
|
|
cp src/libck.so $(DESTDIR)/$(LIBRARY)/$(LDNAME_VERSION)
|
|
ln -sf $(LDNAME_VERSION) $(DESTDIR)/$(LIBRARY)/$(LDNAME)
|
|
ln -sf $(LDNAME_VERSION) $(DESTDIR)/$(LIBRARY)/$(LDNAME_MAJOR)
|
|
chmod 744 $(DESTDIR)/$(LIBRARY)/$(LDNAME_VERSION) \
|
|
$(DESTDIR)/$(LIBRARY)/$(LDNAME) \
|
|
$(DESTDIR)/$(LIBRARY)/$(LDNAME_MAJOR)
|
|
|
|
install-lib:
|
|
mkdir -p $(DESTDIR)/$(LIBRARY)
|
|
cp src/libck.a $(DESTDIR)/$(LIBRARY)/libck.a
|
|
chmod 644 $(DESTDIR)/$(LIBRARY)/libck.a
|
|
|
|
install: all install-headers @INSTALL_LIBS@
|
|
$(MAKE) -C doc install
|
|
mkdir -p $(DESTDIR)/$(LIBRARY) || exit
|
|
mkdir -p $(DESTDIR)/$(PKGCONFIG_DATA) || exit
|
|
chmod 755 $(DESTDIR)/$(PKGCONFIG_DATA)
|
|
cp build/ck.pc $(DESTDIR)/$(PKGCONFIG_DATA)/ck.pc || exit
|
|
@echo
|
|
@echo
|
|
@echo ---[ Concurrency Kit has installed successfully.
|
|
|
|
uninstall:
|
|
$(MAKE) -C doc uninstall
|
|
rm -f $(DESTDIR)/$(LIBRARY)/$(LDNAME_VERSION) \
|
|
$(DESTDIR)/$(LIBRARY)/$(LDNAME) \
|
|
$(DESTDIR)/$(LIBRARY)/$(LDNAME_MAJOR)
|
|
rm -f $(DESTDIR)/$(LIBRARY)/libck.so*
|
|
rm -f $(DESTDIR)/$(LIBRARY)/libck.a
|
|
rm -f $(DESTDIR)/$(HEADERS)/ck_*.h
|
|
rm -f $(DESTDIR)/$(HEADERS)/spinlock/*.h
|
|
rm -f $(DESTDIR)/$(HEADERS)/gcc/ck_*.h
|
|
rm -f $(DESTDIR)/$(HEADERS)/gcc/*/ck_*.h
|
|
rm -f $(DESTDIR)/$(PKGCONFIG_DATA)/ck.pc
|
|
|
|
clean:
|
|
$(MAKE) -C doc clean
|
|
$(MAKE) -C src clean
|
|
$(MAKE) -C regressions clean
|
|
rm -f $(BUILD_DIR)/*~ $(BUILD_DIR)/*.o $(BUILD_DIR)/*.tar.gz
|
|
|
|
dist:
|
|
git archive --remote=$(SRC_DIR) --format=tar --prefix=ck-$(VERSION)/ HEAD \
|
|
| gzip > $(BUILD_DIR)/ck-$(VERSION).tar.gz
|
|
|
|
distclean: clean
|
|
rm -f $(BUILD_DIR)/include/ck_md.h
|
|
rm -f $(BUILD_DIR)/build/regressions.build
|
|
rm -f $(BUILD_DIR)/build/ck.build
|
|
rm -f $(BUILD_DIR)/build/ck.pc
|
|
rm -f $(BUILD_DIR)/Makefile
|
|
rm -f $(BUILD_DIR)/doc/Makefile
|
|
|