Blame Makefile.in

5dc983
PACKAGE 		= @package@
5dc983
NICKNAME 		= @nickname@
5dc983
PROJECT_DIR 		= @project_dir@
5dc983
SOURCE_DIR 		= @source_dir@
5dc983
GIT_REFERENCE_INDEX	= @git_reference_index@
5dc983
CUSTOM_INSTALL_HEADERS  = @custom_install_headers@
5dc983
AVOID_VERSION		= @avoid_version@
5dc983
5dc983
PKGNAME			= @pkgname@
5dc983
PKGDESC			= @pkgdesc@
5dc983
PKGUSRC			= @pkgusrc@
5dc983
PKGREPO			= @pkgrepo@
5dc983
PKGPSRC			= @pkgpsrc@
5dc983
PKGDURL			= @pkgdurl@
5dc983
PKGDEFS			= @pkgdefs@
5dc983
PKGLIBS			= @pkglibs@
5dc983
5dc983
BUILD 			= @build@
5dc983
HOST 			= @host@
5dc983
CCHOST 			= @cchost@
5dc983
CFGHOST 		= @cfghost@
5dc983
TARGET 			= @target@
5dc983
ARCH 			= @arch@
5dc983
COMPILER 		= @compiler@
5dc983
TOOLCHAIN		= @toolchain@
5dc983
SYSROOT 		= @sysroot@
5dc983
CROSS_COMPILE 		= @cross_compile@
5dc983
SHELL 			= @shell@
5dc983
7fccf1
PREFIX 			= @prefix@
7fccf1
EXEC_PREFIX 		= @exec_prefix@
7fccf1
BINDIR 			= @bindir@
7fccf1
SBINDIR 		= @sbindir@
7fccf1
LIBDIR 			= @libdir@
7fccf1
INCLUDEDIR 		= @includedir@
7fccf1
OLDINCLUDEDIR 		= @oldincludedir@
7fccf1
MANDIR 			= @mandir@
7fccf1
DOCDIR 			= @docdir@
7fccf1
LIBEXECDIR 		= @libexecdir@
7fccf1
7fccf1
SYSCONFDIR		= @sysconfdir@
7fccf1
SHAREDSTATEDIR		= @sharedstatedir@
7fccf1
LOCALSTATEDIR		= @localstatedir@
7fccf1
RUNSTATEDIR		= @runstatedir@
7fccf1
DATAROOTDIR		= @datarootdir@
7fccf1
DATADIR			= @datadir@
7fccf1
INFODIR			= @infodir@
7fccf1
LOCALEDIR		= @localedir@
7fccf1
HTMLDIR			= @htmldir@
7fccf1
DVIDIR			= @dvidir@
7fccf1
PDFDIR			= @pdfdir@
7fccf1
PSDIR			= @psdir@
7fccf1
c0ca97
CFLAGS_COMMON 		+= @cflags_common@
c0ca97
CFLAGS_DEBUG 		+= @cflags_debug@
c0ca97
CFLAGS_CMDLINE 		+= @cflags_cmdline@
c0ca97
CFLAGS_CONFIG 		+= @cflags_config@
c0ca97
CFLAGS_SYSROOT 		+= @cflags_sysroot@
c0ca97
CFLAGS_OS		+= @cflags_os@
c0ca97
CFLAGS_SITE		+= @cflags_site@
c0ca97
CFLAGS_PATH 		+= @cflags_path@
c0ca97
CFLAGS_STRICT 		+= @cflags_strict@
c0ca97
CFLAGS_UTIL 		+= @cflags_util@
c0ca97
CFLAGS_LAST 		+= @cflags_last@
c0ca97
CFLAGS_ONCE 		+= @cflags_once@
c0ca97
c0ca97
LDFLAGS_COMMON 		+= @ldflags_common@
c0ca97
LDFLAGS_DEBUG 		+= @ldflags_debug@
c0ca97
LDFLAGS_CMDLINE 	+= @ldflags_cmdline@
c0ca97
LDFLAGS_CONFIG 		+= @ldflags_config@
c0ca97
LDFLAGS_SYSROOT 	+= @ldflags_sysroot@
c0ca97
LDFLAGS_PATH 		+= @ldflags_path@
c0ca97
LDFLAGS_STRICT 		+= @ldflags_strict@
c0ca97
LDFLAGS_UTIL 		+= @ldflags_util@
c0ca97
LDFLAGS_LAST 		+= @ldflags_last@
c0ca97
LDFLAGS_ONCE 		+= @ldflags_once@
5dc983
7fccf1
USER_CC                 = @user_cc@
7fccf1
USER_CPP                = @user_cpp@
7fccf1
USER_CXX                = @user_cxx@
7fccf1
c0ca97
NATIVE_HOST		= @native_host@
c0ca97
NATIVE_CFGHOST		= @native_cfghost@
c0ca97
NATIVE_CFLAGS		= @native_cflags@
c0ca97
NATIVE_LDFLAGS		= @native_ldflags@
5dc983
5dc983
ALL_SHARED              = @all_shared@
5dc983
ALL_STATIC              = @all_static@
5dc983
DISABLE_FRONTEND	= @disable_frontend@
5dc983
DISABLE_SHARED          = @disable_shared@
5dc983
DISABLE_STATIC          = @disable_static@
5dc983
5dc983
USE_CUSTOM_CFGDEFS      = @use_custom_cfgdefs@
5dc983
USE_CUSTOM_USRDEFS      = @use_custom_usrdefs@
5dc983
64ba5c
.SUFFIXES:
64ba5c
5dc983
all:
5dc983
install:
5dc983
shared:
5dc983
static:
5dc983
5dc983
install-extras:
5dc983
install-app-extras:
5dc983
c0ca97
include ./ccenv/host.mk
c0ca97
include ./ccenv/native.mk
5dc983
c0363d
include ./cfgdefs.mk
c0363d
include ./usrdefs.mk
5dc983
7afa02
include $(PROJECT_DIR)/sofort/core/defs.mk
7afa02
include $(PROJECT_DIR)/sofort/core/pkgconf.mk
7afa02
include $(PROJECT_DIR)/sofort/core/version.mk
7afa02
include $(PROJECT_DIR)/sofort/core/flavor.mk
5dc983
c0363d
include $(PROJECT_DIR)/project/osforce.mk
5dc983
include $(PROJECT_DIR)/project/tree.mk
5dc983
include $(PROJECT_DIR)/project/depends.mk
5dc983
include $(PROJECT_DIR)/project/headers.mk
5dc983
include $(PROJECT_DIR)/project/common.mk
5dc983
include $(PROJECT_DIR)/project/arch.mk
5dc983
include $(PROJECT_DIR)/project/extras.mk
5dc983
include $(PROJECT_DIR)/project/overrides.mk
5dc983
5dc983
5dc983
$(APP_SRCS:%.c=%.o): CFLAGS_STATIC = $(CFLAGS_APP)
5dc983
5dc983
src/%.lo: 	$(SOURCE_DIR)/src/%.c $(ALL_HEADERS) host.tag tree.tag
5dc983
		$(CC) -c -o $@ $< $(CFLAGS_SHARED)
5dc983
5dc983
src/%.o: 	$(SOURCE_DIR)/src/%.c $(ALL_HEADERS) host.tag tree.tag
5dc983
		$(CC) -c -o $@ $< $(CFLAGS_STATIC)
5dc983
5dc983
lib/%$(OS_LIB_PREFIXED_SUFFIX)$(VER_XYZ)$(OS_LIB_SUFFIXED_SUFFIX):
5dc983
		$(CC) -shared -o $@ $^ $(LDFLAGS_SHARED)
5dc983
5691c5
lib/%$(OS_ARCHIVE_EXT):
5691c5
		mkdir -p lib
5dc983
		rm -f $@
5dc983
		$(AR) rcs $@ $^
5dc983
5dc983
5dc983
5dc983
all:		package-shared package-static app
5dc983
5dc983
install:	package-install-app
5dc983
install:	package-install-extras
5dc983
install:	install-libs
5dc983
5dc983
app:		app-tag
5dc983
5dc983
app.tag:
5dc983
		cp $(PACKAGE_APP) $(APP)
5dc983
		touch app.tag
5dc983
5dc983
install-libs:	package-install-shared
5dc983
install-libs:	package-install-static
5dc983
5dc983
install-headers-default:
5dc983
		mkdir -p $(DESTDIR)$(INCLUDEDIR)/$(PACKAGE)
5dc983
		cp $(API_HEADERS) $(DESTDIR)$(INCLUDEDIR)/$(PACKAGE)
5dc983
5dc983
install-shared:	shared install-lib install-implib
5dc983
install-shared: package-install-soname package-install-solink
5dc983
install-shared: install-headers
5dc983
5dc983
install-lib:	shared
5dc983
		mkdir -p $(DESTDIR)$(LIBDIR)
5dc983
		cp $(SHARED_LIB) $(DESTDIR)$(LIBDIR)
5dc983
5dc983
install-static:	static install-headers
5dc983
		mkdir -p $(DESTDIR)$(LIBDIR)
5dc983
		cp $(STATIC_LIB) $(DESTDIR)$(LIBDIR)
5dc983
5dc983
install-app:	app install-app-extras
5dc983
		mkdir -p $(DESTDIR)$(BINDIR)
5dc983
		cp $(APP) $(DESTDIR)$(BINDIR)
5dc983
5dc983
install-static-app:	static-app install-app-extras
5dc983
			mkdir -p $(DESTDIR)$(BINDIR)
5dc983
			cp $(STATIC_APP) $(DESTDIR)$(BINDIR)/$(NICKNAME)$(OS_APP_SUFFIX)
5dc983
5dc983
5dc983
5dc983
shared:		shared-lib implib
5dc983
shared:		package-shared-soname package-shared-solink
5dc983
5dc983
static:		static-lib
5dc983
5dc983
shared-lib:	shared-objs $(SHARED_LIB)
5dc983
5dc983
shared-soname:	shared-lib $(SHARED_SONAME)
5dc983
5dc983
shared-solink:	shared-lib $(SHARED_SOLINK)
5dc983
5dc983
static-lib:	static-objs $(STATIC_LIB)
5dc983
5dc983
5dc983
5dc983
default-app:	version.tag static-objs $(DEFAULT_APP)
5dc983
5dc983
shared-app:	version.tag shared $(SHARED_APP)
5dc983
5dc983
static-app:	version.tag static-objs $(STATIC_APP)
5dc983
5dc983
5dc983
5dc983
shared-objs:	dirs $(SHARED_OBJS)
5dc983
5dc983
static-objs:	dirs $(STATIC_OBJS)
5dc983
5dc983
app-objs:	dirs $(APP_OBJS)
5dc983
5dc983
5dc983
5dc983
$(SHARED_LIB):	$(SHARED_OBJS)
5dc983
$(SHARED_LIB):	LDFLAGS_SHARED += $(LDFLAGS_IMPLIB)
5dc983
5dc983
$(STATIC_LIB):	$(STATIC_OBJS)
5dc983
5dc983
$(APP):		$(PACKAGE_APP)
5dc983
5dc983
$(DEFAULT_APP):	$(STATIC_OBJS) $(APP_OBJS)
5dc983
		rm -f app.tag
5dc983
		$(CC) -o $@ $^ $(LDFLAGS_APP)
5dc983
5dc983
$(SHARED_APP):	$(DSO_REF_SOLINK) $(APP_OBJS) $(SHARED_SOLINK)
5dc983
		rm -f app.tag
5dc983
		$(CC) -o $@ $(APP_OBJS) $(LDFLAGS_APP) -l$(PACKAGE)
5dc983
5dc983
$(STATIC_APP):	$(STATIC_OBJS) $(APP_OBJS)
5dc983
		rm -f app.tag
5dc983
		$(CC) -static -o $@ $^ $(LDFLAGS_STATIC)
5dc983
5dc983
5dc983
dirs: 		dirs.tag
5dc983
5dc983
dirs.tag:
5196e0
		mkdir -p build
5dc983
		mkdir -p bin
5dc983
		mkdir -p lib
5dc983
		touch dirs.tag
5dc983
5dc983
host.tag:	Makefile
eb0b78
		$(CC) $(CFLAGS) -dumpmachine > host.tmp
eb0b78
		mv host.tmp host.tag
5dc983
5196e0
version.tag:	$(GIT_REFERENCE_INDEX) dirs.tag
7afa02
		$(PROJECT_DIR)/sofort/tools/version.sh	\
5dc983
			-s $(SOURCE_DIR)		\
5dc983
			-o build/$(PACKAGE)_version.h	\
5dc983
			-p $(PACKAGE)
5dc983
		touch version.tag
5dc983
5dc983
distclean:	clean
659af5
		rm -f ccenv/host.mk
659af5
		rm -f ccenv/native.mk
3ce422
		rm -f cfgdefs.mk
3ce422
		rm -f usrdefs.mk
62003a
		rm -f config.log
5dc983
		rm -f Makefile
ec0a5f
		rmdir build ccenv bin lib 2>&1 || true
5dc983
5dc983
clean:		clean-implib
5dc983
		rm -f tree.tag
5dc983
		rm -f dirs.tag
5dc983
		rm -f host.tag
eb0b78
		rm -f host.tmp
5dc983
		rm -f version.tag
5dc983
		rm -f app.tag
5dc983
		rm -f $(SHARED_OBJS)
5dc983
		rm -f $(STATIC_OBJS)
5dc983
		rm -f $(APP_OBJS)
5dc983
		rm -f $(SHARED_LIB)
5dc983
		rm -f $(SHARED_SONAME)
5dc983
		rm -f $(SHARED_SOLINK)
5dc983
		rm -f $(STATIC_LIB)
5dc983
		rm -f $(APP)
5dc983
		rm -f $(DEFAULT_APP)
5dc983
		rm -f $(SHARED_APP)
5dc983
		rm -f $(STATIC_APP)
ef5361
		rm -f build/$(PACKAGE)_version.h
ef5361
		rm -f build/$(PACKAGE).pc
5dc983
5dc983
a49d61
.display:	.display-project .display-pkgconf .display-env \
a49d61
		.display-tools   .display-flags                \
a49d61
		.display-dirs    .display-build                \
a49d61
		.display-config
5dc983
5dc983
.conf:		PAGER ?= less
5dc983
.conf:
5dc983
		$(MAKE) .display | $(PAGER)
5dc983
eb0b78
.PHONY:		package-app \
5dc983
		all install shared static app \
5dc983
		shared-objs shared-lib \
5dc983
		shared-soname shared-solink \
5dc983
		package-shared-soname package-shared-solink \
5dc983
		static-objs static-lib \
5dc983
		default-app shared-app static-app \
5dc983
		install-shared install-static \
5dc983
		install-soname install-solink \
5dc983
		package-install-soname package-install-solink \
5dc983
		install-headers install-app \
5dc983
		install-headers-default install-headers-custom \
5dc983
		clean distclean clean-implib version \
5dc983
		.display .conf \
5dc983
		.display-project .display-env .display-tools .display-flags \
892efc
		.display-pe .display-dirs .display-build \
5dc983
		implib implib-ver implib-soname implib-solink \
5dc983
		install-implib install-implib-ver \
5dc983
		install-implib-soname install-implib-solink