1: #
2: # ----------------------------------------------------------------------
3: # T2EX Software Package
4: #
5: # Copyright 2012 by Ken Sakamura.
6: # This software is distributed under the latest version of T-License 2.x.
7: # ----------------------------------------------------------------------
8: #
9: # Released by T-Engine Forum(http://www.t-engine.org/) at 2012/12/12.
10: # Modified by T-Engine Forum at 2013/02/19.
11: # Modified by TRON Forum(http://www.tron.org/) at 2015/06/04.
12: #
13: # ----------------------------------------------------------------------
14: #
15:
16: #
17: # This software package is available for use, modification,
18: # and redistribution in accordance with the terms of the attached
19: # T-License 2.x.
20: # If you want to redistribute the source code, you need to attach
21: # the T-License 2.x document.
22: # There's no obligation to publish the content, and no obligation
23: # to disclose it to the TRON Forum if you have modified the
24: # software package.
25: # You can also distribute the modified source code. In this case,
26: # please register the modification to T-Kernel traceability service.
27: # People can know the history of modifications by the service,
28: # and can be sure that the version you have inherited some
29: # modification of a particular version or not.
30: #
31: # http://trace.tron.org/tk/?lang=en
32: # http://trace.tron.org/tk/?lang=ja
33: #
34: # As per the provisions of the T-License 2.x, TRON Forum ensures that
35: # the portion of the software that is copyrighted by Ken Sakamura or
36: # the TRON Forum does not infringe the copyrights of a third party.
37: # However, it does not make any warranty other than this.
38: # DISCLAIMER: TRON Forum and Ken Sakamura shall not be held
39: # responsible for any consequences or damages caused directly or
40: # indirectly by the use of this software package.
41: #
42: # The source codes in bsd_source.tar.gz in this software package are
43: # derived from NetBSD or OpenBSD and not covered under T-License 2.x.
44: # They need to be changed or redistributed according to the
45: # representation of each source header.
46: #
47:
48: #
49: # makerules
50: # for GNU make
51: #
52: # common rules for T2EX program modules
53: #
54: # environment variables:
55: #
56: # mode compile mode
57: # (empty) : release version
58: # debug : debug version
59: #
60: # BD development environment base directory
61: #
62: # GNUs cross development environment tool
63: # GNU_BD GNU cross development environment tool base directory
64: #
65: # REL_TYP relocatable format
66: # r : relocatable format (default)
67: # q : fully-linked relocatable format
68: #
69: # MOD_TYP module type
70: # u : user program module (default)
71: # s : system program module
72: #
73: # this makerules needs:
74: # * /usr/bin/make GNU make version 3.78.1
75: # * /usr/bin/perl perl version 5.005_03
76: #
77:
78: # ===== default settings ======================================================
79: ifndef BD
80: # SDK base directory
81: BD := /usr/local/te
82: endif
83:
84: include $(BD)/etc/makerules
85:
86: # ===== platform specific =====================================================
87: #
88: # MODULE_INSTALLDIR module install directory
89:
90: MODULE_INSTALLDIR = $(BD)/module/bin/$(TETYPE)_$(MACHINE)$(SUFFIX_INST)
91:
92: # ===== common definitions ====================================================
93:
94: ### install module binary ###
95: $(MODULE_INSTALLDIR)/%: %
96: $(BD)/etc/backup_copy -t $< $(MODULE_INSTALLDIR)
97:
98: # ===== individual definitions ================================================
99:
100: ifeq ($(REL_TYP), q)
101: LDFLAGS2 = -static -q -Wl,-q -B $(COMMONLIB) -T $(BD)/lib/build_t2ex/$(TETYPE)_$(MACHINE)$(SUFFIX_LIB)/reloc.lnk
102: else
103: LDFLAGS2 = -static -r -B $(COMMONLIB) -T $(BD)/lib/build_t2ex/$(TETYPE)_$(MACHINE)$(SUFFIX_LIB)/reloc.lnk
104: endif
105:
106: ifneq ($(MOD_TYP), s)
107: LDLIBS += -lusermod
108: endif
109:
110: LOADLIBES =
111: LDOBJS =
112: LDLIBS += -ltk -lstr -lsvc
113:
114: HEADER := $(BD)/include/t2ex $(HEADER)
115:
116: ### symbol list ###
117: %.map: %
118: $(NM) $(NMFLAGS) $< > $@
119: # $(NM) $(NMFLAGS) $< | $(BD)/module/etc/chkmain | $(BD)/etc/chkundef -arm > $@
120:
121: # ============================================================================