1 ifndef $(COMMON_INCLUDED
)
5 # The variable "DISTRELEASE" should be overwritten in rpm spec files with:
6 # "make DISTRELEASE=%{release}" and "make install DISTRELEASE=%{release}"
10 DISTRELEASE
= build-
$(shell date
+%Y
%m
%d
)
11 S390_TOOLS_RELEASE
= $(VERSION
).
$(RELEASE
).
$(PATCHLEVEL
)-$(DISTRELEASE
)
12 export S390_TOOLS_RELEASE
14 reldir
= $(subst $(shell cd
-P
$(dir $(filter %common.mak
,$(MAKEFILE_LIST
))); \
17 # Cross Compiling Support
19 AS
= $(call echocmd
," AS ",/$@
)$(CROSS_COMPILE
)as
20 LINK
= $(call echocmd
," LINK ",/$@
)$(CROSS_COMPILE
)gcc
21 LD
= $(call echocmd
," LD ",/$@
)$(CROSS_COMPILE
)ld
22 CC
= $(call echocmd
," CC ",/$@
)$(CROSS_COMPILE
)gcc
23 LINKXX
= $(call echocmd
," LINKXX ",/$@
)$(CROSS_COMPILE
)g
++
24 CXX
= $(call echocmd
," CXX ",/$@
)$(CROSS_COMPILE
)g
++
25 CPP
= $(call echocmd
," CPP ",/$@
)$(CROSS_COMPILE
)gcc
-E
26 AR
= $(call echocmd
," AR ",/$@
)$(CROSS_COMPILE
)ar
27 NM
= $(call echocmd
," NM ",/$@
)$(CROSS_COMPILE
)nm
28 STRIP
= $(call echocmd
," STRIP ",/$@
)$(CROSS_COMPILE
)strip
29 OBJCOPY
= $(call echocmd
," OBJCOPY ",/$@
)$(CROSS_COMPILE
)objcopy
30 OBJDUMP
= $(call echocmd
," OBJDUMP ",/$@
)$(CROSS_COMPILE
)objdump
35 echocmd
=echo
$1$(call reldir
)$2;
40 WARNFLAGS
= -W
-Wall
-Wno-unused-parameter
44 CFLAGS
= $(WARNFLAGS
) -O3
-DS390_TOOLS_RELEASE
=$(S390_TOOLS_RELEASE
) \
46 CXXFLAGS
= $(WARNFLAGS
) -O3
-DS390_TOOLS_RELEASE
=$(S390_TOOLS_RELEASE
) \
48 export AS LD CC CPP AR NM STRIP OBJCOPY OBJDUMP INSTALL CFLAGS
50 # Support alternate install root
52 USRSBINDIR
= $(INSTROOT
)/usr
/sbin
53 USRBINDIR
= $(INSTROOT
)/usr
/bin
54 BINDIR
= $(INSTROOT
)/sbin
55 LIBDIR
= $(INSTROOT
)/lib
56 SYSCONFDIR
= $(INSTROOT
)/etc
57 MANDIR
= $(INSTROOT
)/usr
/share
/man
58 TOOLS_LIBDIR
= $(INSTROOT
)/lib
/s390-tools
59 INSTDIRS
= $(USRSBINDIR
) $(USRBINDIR
) $(BINDIR
) $(LIBDIR
) $(MANDIR
) \
60 $(SYSCONFDIR
) $(TOOLS_LIBDIR
)
61 OWNER
= $(shell id
-un
)
62 GROUP
= $(shell id
-gn
)
63 export INSTROOT BINDIR LIBDIR MANDIR OWNER GROUP
65 # Special defines for zfcpdump
66 ZFCPDUMP_DIR
= /usr
/local
/share
/zfcpdump
67 ZFCPDUMP_IMAGE
= zfcpdump.image
68 ZFCPDUMP_RD
= zfcpdump.rd
69 export ZFCPDUMP_DIR ZFCPDUMP_IMAGE ZFCPDUMP_RD
71 # Overwrite implicite makefile rules for having nice compile output
73 $(CC
) $(CPPFLAGS
) $(CFLAGS
) -c
$<
76 $(CXX
) $(CPPFLAGS
) $(CXXFLAGS
) -c
$<
79 $(LINK
) $(LDFLAGS
) $^
$(LOADLIBES
) $(LDLIBS
) -o
$@
84 for
dir in
$(INSTDIRS
); do \
85 test -d
$$dir ||
$(INSTALL
) -g
$(GROUP
) -o
$(OWNER
) -d
$$dir; \
87 for i in
1 2 3 4 5 6 7 8; do \
88 test -d
$(MANDIR
)/man
$$i ||
$(INSTALL
) -g
$(GROUP
) -o
$(OWNER
) \
89 -d
$(MANDIR
)/man
$$i; \
93 $(call echocmd
," INSTALL ")
95 install: install_echo install_dirs
98 $(call echocmd
," CLEAN ")