Mercurial > hg > Members > kono > nitros9-code
annotate rules.mak @ 2855:e126b9acab32 lwtools-port
rules.mak: Do not hardcode path for "echo"
It is basically the only tool with full path here and I don't see any
reason for it. We don't use special echo options that would fail
on the shell built-in echo.
Also don't hardcode path for losetup. sudo should make sure you
have the relevant location in your path, and that the path is sanitized,
otherwise your sudo setup is broken.
author | Tormod Volden <debian.tormod@gmail.com> |
---|---|
date | Sat, 13 Jul 2013 11:30:31 +0200 |
parents | f2e92661b4c6 |
children | 84d284e812cd |
rev | line source |
---|---|
1393 | 1 # The NitrOS-9 Project |
2 # Project-Wide Rules | |
0 | 3 |
1754
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
4 # Environment variables are now used to specify any directories other |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
5 # than the defaults below: |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
6 # |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
7 # NITROS9DIR - base directory of the NitrOS-9 project on your system |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
8 # |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
9 # If the defaults below are fine, then there is no need to set any |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
10 # environment variables. |
331 | 11 |
12 | |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
13 # NitrOS-9 version, major and minor release numbers are here |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
14 NOS9VER = 3 |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
15 NOS9MAJ = 2 |
2183 | 16 NOS9MIN = 9 |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
17 |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
18 # Set this to 1 to turn on "DEVELOPMENT" message in sysgo |
2183 | 19 NOS9DBG = 1 |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
20 |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
21 #################### DO NOT CHANGE ANYTHING BELOW THIS LINE #################### |
1787 | 22 |
1865 | 23 CC = c3 |
24 | |
1805 | 25 NITROS9VER = v0$(NOS9VER)0$(NOS9MAJ)0$(NOS9MIN) |
1787 | 26 |
1754
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
27 ifndef NITROS9DIR |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
28 NITROS9DIR = $(HOME)/nitros9 |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
29 endif |
1771 | 30 ifndef CLOUD9DIR |
31 CLOUD9DIR = $(HOME)/cloud9 | |
32 endif | |
33 | |
34 C9 = $(CLOUD9DIR) | |
1760
27e85b681dab
Fixed DEFS issue in 6809l2 and 6309l2 (thanks Rodney!)
boisy
parents:
1759
diff
changeset
|
35 DEFSDIR = $(NITROS9DIR)/defs |
1754
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
36 DSKDIR = $(NITROS9DIR)/dsks |
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
37 |
299
ce65a48362d5
Added BASE macro, o2u/d2u now execute relative to hosttools
boisy
parents:
224
diff
changeset
|
38 |
0 | 39 # If we're using the OS-9 emulator and the *real* OS-9 assembler, |
40 # uncomment the following two lines. | |
41 #AS = os9 /mnt2/src/ocem/os9/asm | |
42 #ASOUT = o= | |
43 | |
44 # Use the cross assembler | |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
45 #AS = os9asm -i=$(DEFSDIR) |
2787
28b6ec8a14d5
Added 'extern' pragam, fixed up rules.mak, changed 'section text' to 'section code' in sources
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2783
diff
changeset
|
46 AS = lwasm --6309 --format=os9 --pragma=pcaspcr,nosymbolcase,condundefzero,undefextern,dollarnotlocal --includedir=. --includedir=$(DEFSDIR) |
2819
c3ebfd514c0b
Fixed an issue where Z* descriptors weren't being made correctly for level 2.
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2811
diff
changeset
|
47 ASROM = lwasm --6309 --format=raw --pragma=pcaspcr,nosymbolcase,condundefzero,undefextern,dollarnotlocal --includedir=. --includedir=$(DEFSDIR) |
c3ebfd514c0b
Fixed an issue where Z* descriptors weren't being made correctly for level 2.
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2811
diff
changeset
|
48 ASBIN = lwasm --6309 --format=decb --pragma=pcaspcr,nosymbolcase,condundefzero,undefextern,dollarnotlocal --includedir=. --includedir=$(DEFSDIR) |
1528 | 49 ASOUT = -o |
2664
09feb97c181f
Initial changes to use lwasm instead of mamou
William Astle <lost@l-w.ca>
parents:
2512
diff
changeset
|
50 AFLAGS = -DNOS9VER=$(NOS9VER) -DNOS9MAJ=$(NOS9MAJ) -DNOS9MIN=$(NOS9MIN) -DNOS9DBG=$(NOS9DBG) |
2055 | 51 ifdef PORT |
2664
09feb97c181f
Initial changes to use lwasm instead of mamou
William Astle <lost@l-w.ca>
parents:
2512
diff
changeset
|
52 AFLAGS += -D$(PORT)=1 |
2055 | 53 endif |
0 | 54 |
1879 | 55 # RMA/RLINK |
2810
7dbdaa3a7d6c
Removed case related pragma so that inetd assembles correctly
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2799
diff
changeset
|
56 ASM = lwasm --6309 --format=obj --pragma=pcaspcr,condundefzero,undefextern,dollarnotlocal,export --includedir=. |
2789
3012d4990f57
Added --format=os9 to lwlink rule
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2787
diff
changeset
|
57 LINKER = lwlink --format=os9 |
2852
f2e92661b4c6
Makefiles: Always use macro for lwar and rm
Tormod Volden <debian.tormod@gmail.com>
parents:
2819
diff
changeset
|
58 LWAR = lwar -c |
1879 | 59 |
0 | 60 # Commands |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
61 MAKDIR = os9 makdir |
224 | 62 RM = rm -f |
0 | 63 MERGE = cat |
1654
f62ca34d4419
Level 2: shellplus stand-alone file is no longer copied to CMDS
boisy
parents:
1593
diff
changeset
|
64 MOVE = mv |
2855
e126b9acab32
rules.mak: Do not hardcode path for "echo"
Tormod Volden <debian.tormod@gmail.com>
parents:
2852
diff
changeset
|
65 ECHO = echo |
331 | 66 CD = cd |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
67 CP = os9 copy -o=0 |
1528 | 68 CPL = $(CP) -l |
331 | 69 TAR = tar |
0 | 70 CHMOD = chmod |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
71 IDENT = os9 ident |
331 | 72 IDENT_SHORT = $(IDENT) -s |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
73 #UNIX2OS9 = u2o |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
74 #OS92UNIX = o2u |
2770
bfe3de781ddf
Added Arduino dwread/dwwrite changes
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2724
diff
changeset
|
75 OS9FORMAT = os9 format -e |
bfe3de781ddf
Added Arduino dwread/dwwrite changes
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2724
diff
changeset
|
76 OS9FORMAT_SS35 = os9 format -e -t35 -ss -dd |
bfe3de781ddf
Added Arduino dwread/dwwrite changes
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2724
diff
changeset
|
77 OS9FORMAT_SS40 = os9 format -e -t40 -ss -dd |
bfe3de781ddf
Added Arduino dwread/dwwrite changes
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2724
diff
changeset
|
78 OS9FORMAT_SS80 = os9 format -e -t80 -ss -dd |
bfe3de781ddf
Added Arduino dwread/dwwrite changes
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2724
diff
changeset
|
79 OS9FORMAT_DS40 = os9 format -e -t40 -ds -dd |
bfe3de781ddf
Added Arduino dwread/dwwrite changes
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2724
diff
changeset
|
80 OS9FORMAT_DS80 = os9 format -e -t80 -ds -dd |
2811
611715587834
Updated rules.mak and level1/coco1/bootfiles/makefile
David Ladd <drencor-xeen@users.sf.net>
parents:
2810
diff
changeset
|
81 OS9FORMAT_DW = os9 format -t1024 -ss -dd |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
82 OS9GEN = os9 gen |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
83 OS9RENAME = os9 rename |
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
84 OS9ATTR = os9 attr -q |
1126 | 85 OS9ATTR_TEXT = $(OS9ATTR) -npe -npw -pr -ne -w -r |
86 OS9ATTR_EXEC = $(OS9ATTR) -pe -npw -pr -e -w -r | |
1803
6b0d1027e4e0
Removed NITROS9VERSION, NITROS9MAJOR, NITROS9MINOR environment vars from
boisy
parents:
1787
diff
changeset
|
87 PADROM = os9 padrom |
331 | 88 MOUNT = sudo mount |
89 UMOUNT = sudo umount | |
2855
e126b9acab32
rules.mak: Do not hardcode path for "echo"
Tormod Volden <debian.tormod@gmail.com>
parents:
2852
diff
changeset
|
90 LOREMOVE = sudo losetup -d |
e126b9acab32
rules.mak: Do not hardcode path for "echo"
Tormod Volden <debian.tormod@gmail.com>
parents:
2852
diff
changeset
|
91 LOSETUP = sudo losetup |
331 | 92 LINK = ln |
93 SOFTLINK = $(LINK) -s | |
2774
1868fbf470e7
Merged lwtools-port (2773:ce3dba57003b) and mainline (2772:0a3f4d8ea6d5)
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2770
diff
changeset
|
94 ARCHIVE = zip -D -9 -j |
2512 | 95 MKDSKINDEX = $(NITROS9DIR)/3rdparty/utils/aaw/mkdskindex |
0 | 96 |
355 | 97 # Directories |
1754
9092b25eeb4c
rules.mak now uses environment variables as an alternative for placement of
boisy
parents:
1729
diff
changeset
|
98 3RDPARTY = $(NITROS9DIR)/3rdparty |
2052 | 99 LEVEL1 = $(NITROS9DIR)/level1 |
100 LEVEL2 = $(NITROS9DIR)/level2 | |
2352 | 101 LEVEL3 = $(NITROS9DIR)/level3 |
2774
1868fbf470e7
Merged lwtools-port (2773:ce3dba57003b) and mainline (2772:0a3f4d8ea6d5)
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2770
diff
changeset
|
102 NOSLIB = $(NITROS9DIR)/lib |
2799
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
103 CC68L1 = $(LEVEL1)/coco1 |
2377 | 104 CC368L2 = $(LEVEL2)/coco3 |
105 CC363L2 = $(LEVEL2)/coco3_6309 | |
106 CC363L3 = $(LEVEL3)/coco3_6309 | |
355 | 107 |
2799
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
108 # HDD Drive ID's |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
109 ID0 = -DITDRV=0 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
110 ID1 = -DITDRV=1 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
111 ID2 = -DITDRV=2 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
112 ID3 = -DITDRV=3 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
113 ID4 = -DITDRV=4 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
114 ID5 = -DITDRV=5 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
115 ID6 = -DITDRV=6 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
116 ID7 = -DITDRV=7 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
117 SLAVE = -DITDNS=1 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
118 MASTER = -DITDNS=0 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
119 |
5a3acdd1c7d6
Updated level1/coco1/modules/makefile , level2/coco3/modules/makefile , & rules.mak for missing values for drive descriptors.
drencor-xeen
parents:
2789
diff
changeset
|
120 |
1865 | 121 # C-Cubed Rules |
2783
03f26e88b809
Renamed files and setup for lwasm/lwlink work
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2782
diff
changeset
|
122 %.o: %.c |
1865 | 123 $(CC) $(CFLAGS) $< -r |
124 | |
2783
03f26e88b809
Renamed files and setup for lwasm/lwlink work
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2782
diff
changeset
|
125 %.a: %.o |
2782
aaba193af04f
Updated code to use lwasm/lwlink
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2774
diff
changeset
|
126 lwar -c $@ $? |
1879 | 127 |
2787
28b6ec8a14d5
Added 'extern' pragam, fixed up rules.mak, changed 'section text' to 'section code' in sources
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2783
diff
changeset
|
128 %: %.o |
28b6ec8a14d5
Added 'extern' pragam, fixed up rules.mak, changed 'section text' to 'section code' in sources
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2783
diff
changeset
|
129 $(LINKER) $(LFLAGS) $^ -o$@ |
28b6ec8a14d5
Added 'extern' pragam, fixed up rules.mak, changed 'section text' to 'section code' in sources
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2783
diff
changeset
|
130 |
2783
03f26e88b809
Renamed files and setup for lwasm/lwlink work
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2782
diff
changeset
|
131 %: %.a |
2782
aaba193af04f
Updated code to use lwasm/lwlink
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2774
diff
changeset
|
132 $(LINKER) $(LFLAGS) $^ -o$@ |
1865 | 133 |
2783
03f26e88b809
Renamed files and setup for lwasm/lwlink work
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2782
diff
changeset
|
134 %.o: %.as |
2782
aaba193af04f
Updated code to use lwasm/lwlink
Boisy Pitre <boisy.pitre@nuance.com>
parents:
2774
diff
changeset
|
135 $(ASM) $< -o$@ |
1865 | 136 |
0 | 137 # File managers |
138 %.mn: %.asm | |
139 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
140 | |
141 # Device drivers | |
142 %.dr: %.asm | |
143 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
144 | |
145 # Device descriptors | |
146 %.dd: %.asm | |
147 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
148 | |
1257 | 149 # Subroutine modules |
150 %.sb: %.asm | |
151 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
152 | |
0 | 153 # Window device descriptors |
154 %.dw: %.asm | |
155 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
156 | |
157 # Terminal device descriptors | |
158 %.dt: %.asm | |
159 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
160 | |
161 # I/O subroutines | |
162 %.io: %.asm | |
163 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
164 | |
165 # All other modules | |
166 %: %.asm | |
167 $(AS) $(AFLAGS) $< $(ASOUT)$@ | |
168 |