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