Factor common code from subdirectory makefiles into Makefile.comm.in
This commit is contained in:
		@@ -1,3 +1,6 @@
 | 
			
		||||
# @configure_input@
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
# Makefile.in
 | 
			
		||||
#
 | 
			
		||||
# This file is part of a free library building Windows NT drivers.
 | 
			
		||||
@@ -6,66 +9,18 @@
 | 
			
		||||
# but WITHOUT ANY WARANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# start config section
 | 
			
		||||
 | 
			
		||||
SHELL = @SHELL@
 | 
			
		||||
 | 
			
		||||
srcdir = @srcdir@
 | 
			
		||||
top_srcdir = @top_srcdir@
 | 
			
		||||
top_builddir = @top_builddir@
 | 
			
		||||
 | 
			
		||||
VPATH = @srcdir@
 | 
			
		||||
 | 
			
		||||
host_alias = @host@
 | 
			
		||||
build_alias = @build@
 | 
			
		||||
target_alias = @target@
 | 
			
		||||
with_cross_host = @with_cross_host@
 | 
			
		||||
prefix = @prefix@
 | 
			
		||||
includedir:=@includedir@
 | 
			
		||||
 | 
			
		||||
program_transform_name = @program_transform_name@
 | 
			
		||||
exec_prefix = @exec_prefix@
 | 
			
		||||
libdir:=@libdir@
 | 
			
		||||
bindir = @bindir@
 | 
			
		||||
ifeq ($(target_alias),$(host_alias))
 | 
			
		||||
ifeq ($(build_alias),$(host_alias))
 | 
			
		||||
tooldir:=$(exec_prefix)
 | 
			
		||||
else
 | 
			
		||||
tooldir:=$(exec_prefix)/$(target_alias)
 | 
			
		||||
endif
 | 
			
		||||
else
 | 
			
		||||
tooldir:=$(exec_prefix)/$(target_alias)
 | 
			
		||||
endif
 | 
			
		||||
datadir = @datadir@
 | 
			
		||||
infodir = @infodir@
 | 
			
		||||
ifneq (,$(findstring cygwin,$(target_alias)))
 | 
			
		||||
inst_includedir:=$(tooldir)/include/w32api
 | 
			
		||||
inst_libdir:=$(tooldir)/lib/w32api
 | 
			
		||||
else
 | 
			
		||||
ifneq (,$(with_cross_host))
 | 
			
		||||
inst_includedir:=$(tooldir)/include/w32api
 | 
			
		||||
inst_libdir:=$(tooldir)/lib
 | 
			
		||||
else
 | 
			
		||||
inst_includedir:=$(includedir)
 | 
			
		||||
inst_libdir:=$(libdir)
 | 
			
		||||
endif
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
INSTALL = @INSTALL@
 | 
			
		||||
INSTALL_DATA = @INSTALL_DATA@
 | 
			
		||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
 | 
			
		||||
mkinstalldirs = mkdir -p
 | 
			
		||||
 | 
			
		||||
CC = @CC@
 | 
			
		||||
CC_FOR_TARGET = $(CC)
 | 
			
		||||
 | 
			
		||||
DLLTOOL = @DLLTOOL@
 | 
			
		||||
DLLTOOL_FLAGS = --as=$(AS) -k
 | 
			
		||||
AS = @AS@
 | 
			
		||||
AS_FOR_TARGET = $(AS_FOR_TARGET)
 | 
			
		||||
WINDRES = @WINDRES@
 | 
			
		||||
include ${top_builddir}/Makefile.comm
 | 
			
		||||
 | 
			
		||||
# Depending on if we build as part of winsup or mingw we need to
 | 
			
		||||
# add additional include paths in order to get the correct headers
 | 
			
		||||
# from the C library.
 | 
			
		||||
#
 | 
			
		||||
BUILDENV = @BUILDENV@
 | 
			
		||||
 | 
			
		||||
ifeq ($(BUILDENV), cygwin)
 | 
			
		||||
@@ -80,21 +35,12 @@ endif
 | 
			
		||||
 | 
			
		||||
INCLUDES = -I$(srcdir)/../include -I$(srcdir)/../include/directx $(EXTRA_INCLUDES)
 | 
			
		||||
 | 
			
		||||
CFLAGS = @CFLAGS@
 | 
			
		||||
ALL_CFLAGS = $(CFLAGS) $(INCLUDES)
 | 
			
		||||
 | 
			
		||||
RANLIB = @RANLIB@
 | 
			
		||||
AR = @AR@
 | 
			
		||||
LD = @LD@
 | 
			
		||||
 | 
			
		||||
# end config section
 | 
			
		||||
 | 
			
		||||
# headers
 | 
			
		||||
 | 
			
		||||
# Headers
 | 
			
		||||
#
 | 
			
		||||
HEADERS = $(notdir $(wildcard $(srcdir)/../../include/directx/*.h))
 | 
			
		||||
 | 
			
		||||
# libraries
 | 
			
		||||
 | 
			
		||||
# Libraries
 | 
			
		||||
#
 | 
			
		||||
DEF_FILES = $(notdir $(wildcard $(srcdir)/*.def))
 | 
			
		||||
DIST_C_FILES = $(notdir $(wildcard $(srcdir)/*.c))
 | 
			
		||||
DIST_H_FILES = $(notdir $(wildcard $(srcdir)/*.h))
 | 
			
		||||
@@ -110,8 +56,11 @@ DISTFILES = Makefile.in $(DEF_FILES) $(DIST_C_FILES) $(DIST_H_FILES)
 | 
			
		||||
 | 
			
		||||
.NOTPARALLEL:
 | 
			
		||||
 | 
			
		||||
# targets
 | 
			
		||||
all: $(LIBS)
 | 
			
		||||
# Targets: (note that 'all-default' is a redirection from 'all',
 | 
			
		||||
# which is the primary default target identified in the included
 | 
			
		||||
# common makefile fragment, ${top_builddir}/Makefile.comm
 | 
			
		||||
#
 | 
			
		||||
all-default: $(LIBS)
 | 
			
		||||
 | 
			
		||||
TEST_OPTIONS = $(ALL_CFLAGS) -Wall -pedantic -Wsystem-headers -c $(srcdir)/test.c -o test.o
 | 
			
		||||
.PHONY: test
 | 
			
		||||
@@ -129,13 +78,8 @@ test:
 | 
			
		||||
	@$(WINDRES) --define UNICODE --include-dir $(INCDIR) -i $(srcdir)/res.rc -o test.o
 | 
			
		||||
	@rm -f test.o
 | 
			
		||||
 | 
			
		||||
# make rules
 | 
			
		||||
 | 
			
		||||
.SUFFIXES: .c .o .def .a
 | 
			
		||||
 | 
			
		||||
.c.o:
 | 
			
		||||
	$(CC) -c $(ALL_CFLAGS) -o $@ $<
 | 
			
		||||
 | 
			
		||||
# Rules
 | 
			
		||||
#
 | 
			
		||||
libdxerr8.a: dxerr8.o dxerr8w.o
 | 
			
		||||
	$(AR) r $@ dxerr8.o dxerr8w.o
 | 
			
		||||
	$(RANLIB) $@
 | 
			
		||||
@@ -154,31 +98,8 @@ libdinput8.a: dinput8.def $(DINPUT_OBJS)
 | 
			
		||||
	$(AR) r $@ $(DINPUT_OBJS)
 | 
			
		||||
	$(RANLIB) $@
 | 
			
		||||
 | 
			
		||||
lib%.a: %.def %.o
 | 
			
		||||
	$(DLLTOOL) $(DLLTOOL_FLAGS) --output-lib $@ --def $(srcdir)/$*.def
 | 
			
		||||
	$(AR) r $@ $*.o
 | 
			
		||||
	$(RANLIB) $@
 | 
			
		||||
 | 
			
		||||
lib%.a: %.def
 | 
			
		||||
	$(DLLTOOL) $(DLLTOOL_FLAGS) --output-lib $@ --def $<
 | 
			
		||||
 | 
			
		||||
lib%.a: %.o
 | 
			
		||||
	$(AR) rc $@ $*.o
 | 
			
		||||
	$(RANLIB) $@
 | 
			
		||||
 | 
			
		||||
need-DESTDIR-compatibility = prefix libdir includedir
 | 
			
		||||
.PHONY: $(need-DESTDIR-compatibility) fail-DESTDIR-compatibility
 | 
			
		||||
 | 
			
		||||
$(need-DESTDIR-compatibility):
 | 
			
		||||
	@test -z "$(DESTDIR)" || case "$($@)" in ?:*) \
 | 
			
		||||
	  $(MAKE) --no-print-directory reject="$@" fail-DESTDIR-compatibility ;; \
 | 
			
		||||
	esac
 | 
			
		||||
 | 
			
		||||
fail-DESTDIR-compatibility:
 | 
			
		||||
	$(error DESTDIR is not supported when $(reject) contains Win32 path `$($(reject))'; \
 | 
			
		||||
	try `make install $(reject)=$(shell echo '$($(reject))' | sed s,:,:$(DESTDIR),) ...' instead)
 | 
			
		||||
 | 
			
		||||
# install headers and libraries in a target specified directory.
 | 
			
		||||
# Install headers and libraries in a target specified directory.
 | 
			
		||||
#
 | 
			
		||||
install: install-libraries install-headers
 | 
			
		||||
 | 
			
		||||
install-libraries: all $(need-DESTDIR-compatibility)
 | 
			
		||||
@@ -193,7 +114,8 @@ install-headers: $(need-DESTDIR-compatibility)
 | 
			
		||||
		$(INSTALL_DATA) $(srcdir)/../../include/directx/$$i $(DESTDIR)$(inst_includedir)/$$i ; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
# uninstall headers and libraries from a target specified directory
 | 
			
		||||
# Uninstall headers and libraries from a target specified directory
 | 
			
		||||
#
 | 
			
		||||
uninstall: uninstall-libraries uninstall-headers
 | 
			
		||||
 | 
			
		||||
uninstall-libraries: $(need-DESTDIR-compatibility)
 | 
			
		||||
@@ -208,7 +130,6 @@ uninstall-headers: $(need-DESTDIR-compatibility)
 | 
			
		||||
	done
 | 
			
		||||
	rmdir $(DESTDIR)$(inst_includedir)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
dist:
 | 
			
		||||
	mkdir $(distdir)/include/directx
 | 
			
		||||
	chmod 755 $(distdir)/include/directx
 | 
			
		||||
@@ -224,15 +145,4 @@ dist:
 | 
			
		||||
Makefile: Makefile.in ../../config.status ../../configure
 | 
			
		||||
	cd ../..; $(SHELL) config.status
 | 
			
		||||
 | 
			
		||||
# clean
 | 
			
		||||
 | 
			
		||||
mostlyclean:
 | 
			
		||||
	rm -f *~ *.o *.s
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	rm -f *.o *.a *.s *~
 | 
			
		||||
 | 
			
		||||
distclean: clean
 | 
			
		||||
	rm -f config.cache config.status config.log Makefile
 | 
			
		||||
 | 
			
		||||
maintainer-clean: distclean
 | 
			
		||||
# Makefile.in: end of file
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user