|
1 |
| -#---------------------------- |
2 |
| -# Makefile |
3 |
| -#---------------------------- |
4 |
| - |
5 |
| -# common/os specific things |
6 |
| -ifeq ($(OS),Windows_NT) |
7 |
| -NATIVEPATH = $(subst /,\,$(1)) |
8 |
| -WINPATH = $(NATIVEPATH) |
9 |
| -RM = del /f 2>nul |
10 |
| -RMDIR = rmdir /s /q |
11 |
| -MKDIR = mkdir |
12 |
| -PREFIX ?= C: |
13 |
| -CP = copy |
14 |
| -CPDIR = xcopy |
15 |
| -else |
16 |
| -NATIVEPATH = $(subst \,/,$(1)) |
17 |
| -WINPATH = $(shell winepath --windows $(1)) |
18 |
| -RM = rm -f |
19 |
| -MKDIR = mkdir -p |
20 |
| -RMDIR = rm -rf |
21 |
| -PREFIX ?= $(HOME) |
22 |
| -CP = cp |
23 |
| -CPDIR = cp -r |
24 |
| -endif |
25 |
| - |
26 |
| -INSTALLLOC := $(call NATIVEPATH,$(DESTDIR)$(PREFIX)) |
27 |
| -TOOLSDIR := $(call NATIVEPATH,$(CURDIR)/tools) |
28 |
| -SRCDIR := $(call NATIVEPATH,$(CURDIR)/src) |
29 |
| -SPASMDIR := $(call NATIVEPATH,$(TOOLSDIR)/spasm-ng) |
30 |
| -CONVHEXDIR := $(call NATIVEPATH,$(TOOLSDIR)/convhex) |
31 |
| -CONVPNGDIR := $(call NATIVEPATH,$(TOOLSDIR)/convpng) |
32 |
| - |
33 |
| -CEDIR := $(call NATIVEPATH,$(SRCDIR)/ce) |
34 |
| -STDDIR := $(call NATIVEPATH,$(SRCDIR)/std) |
35 |
| - |
36 |
| -SPASM := $(call NATIVEPATH,$(SPASMDIR)/spasm) |
37 |
| -CONVHEX := $(call NATIVEPATH,$(CONVHEXDIR)/convhex) |
38 |
| -CONVPNG := $(call NATIVEPATH,$(CONVPNGDIR)/convpng) |
39 |
| - |
40 |
| -BIN := $(call NATIVEPATH,$(TOOLSDIR)/zds) |
41 |
| - |
42 |
| -GRAPHXDIR := $(call NATIVEPATH,$(SRCDIR)/graphx) |
43 |
| -KEYPADCDIR := $(call NATIVEPATH,$(SRCDIR)/keypadc) |
44 |
| -FILEIOCDIR := $(call NATIVEPATH,$(SRCDIR)/fileioc) |
45 |
| - |
46 |
| -INSTALLBIN := $(call NATIVEPATH,$(INSTALLLOC)/CEdev/bin) |
47 |
| -INSTALLINC := $(call NATIVEPATH,$(INSTALLLOC)/CEdev/include) |
48 |
| -INSTALLLIB := $(call NATIVEPATH,$(INSTALLLOC)/CEdev/lib) |
49 |
| -DIRS := $(INSTALLINC) $(INSTALLINC)/ce $(INSTALLINC)/ce/libs $(INSTALLINC)/std $(INSTALLBIN) $(INSTALLLIB) |
50 |
| -DIRS := $(call NATIVEPATH,$(DIRS)) |
51 |
| - |
52 |
| -all: $(SPASM) $(CONVHEX) $(CONVPNG) graphx fileioc keypadc ce std |
53 |
| - |
54 |
| -#---------------------------- |
55 |
| -# tool rules |
56 |
| -#---------------------------- |
57 |
| -$(SPASM) $(CONVHEX) $(CONVPNG): |
58 |
| - $(MAKE) -C $(dir $@) |
59 |
| - |
60 |
| -clean: clean-graphx clean-fileioc clean-keypadc clean-ce clean-std |
61 |
| - $(MAKE) -C $(SPASMDIR) clean |
62 |
| - $(MAKE) -C $(CONVHEXDIR) clean |
63 |
| - $(MAKE) -C $(CONVPNGDIR) clean |
64 |
| -#---------------------------- |
65 |
| - |
66 |
| -#---------------------------- |
67 |
| -# ce rules |
68 |
| -#---------------------------- |
69 |
| -ce: |
70 |
| - $(MAKE) -C $(CEDIR) BIN=$(BIN) |
71 |
| - |
72 |
| -clean-ce: |
73 |
| - $(MAKE) -C $(CEDIR) clean |
74 |
| -#---------------------------- |
75 |
| - |
76 |
| -#---------------------------- |
77 |
| -# std rules |
78 |
| -#---------------------------- |
79 |
| -std: |
80 |
| - $(MAKE) -C $(STDDIR) BIN=$(BIN) |
81 |
| -clean-std: |
82 |
| - $(MAKE) -C $(STDDIR) clean |
83 |
| -#---------------------------- |
84 |
| - |
85 |
| -#---------------------------- |
86 |
| -# graphx rules |
87 |
| -#---------------------------- |
88 |
| -graphx: $(SPASM) |
89 |
| - $(MAKE) -C $(GRAPHXDIR) SPASM=$(SPASM) BIN=$(BIN) |
90 |
| -clean-graphx: |
91 |
| - $(MAKE) -C $(GRAPHXDIR) clean |
92 |
| -install-graphx: |
93 |
| - $(MAKE) -C $(GRAPHXDIR) install |
94 |
| -uninstall-graphx: |
95 |
| - $(MAKE) -C $(GRAPHXDIR) uninstall |
96 |
| -#---------------------------- |
97 |
| - |
98 |
| -#---------------------------- |
99 |
| -# fileioc rules |
100 |
| -#---------------------------- |
101 |
| -fileioc: $(SPASM) |
102 |
| - $(MAKE) -C $(FILEIOCDIR) SPASM=$(SPASM) BIN=$(BIN) |
103 |
| -clean-fileioc: |
104 |
| - $(MAKE) -C $(FILEIOCDIR) clean |
105 |
| -#---------------------------- |
106 |
| - |
107 |
| -#---------------------------- |
108 |
| -# keypadc rules |
109 |
| -#---------------------------- |
110 |
| -keypadc: $(SPASM) |
111 |
| - $(MAKE) -C $(KEYPADCDIR) SPASM=$(SPASM) BIN=$(BIN) |
112 |
| -clean-keypadc: |
113 |
| - $(MAKE) -C $(KEYPADCDIR) clean |
114 |
| -#---------------------------- |
115 |
| - |
116 |
| -uninstall: |
117 |
| - $(RMDIR) $(call NATIVEPATH,$(INSTALLLOC)/CEdev) |
118 |
| - |
119 |
| -install: $(DIRS) |
120 |
| - $(CPDIR) $(call NATIVEPATH,$(CURDIR)/examples) $(call NATIVEPATH,$(INSTALLLOC)/CEdev) |
121 |
| - $(CP) $(call NATIVEPATH,$(SRCDIR)/asm/*) $(call NATIVEPATH,$(INSTALLLIB)/asm) |
122 |
| - $(CP) $(call NATIVEPATH,$(SRCDIR)/example_makefile) $(call NATIVEPATH,$(INSTALLINC)/.makefile) |
123 |
| - $(CP) $(SPASM) $(INSTALLBIN) |
124 |
| - $(CP) $(CONVHEX) $(INSTALLBIN) |
125 |
| - $(CP) $(CONVPNG) $(INSTALLBIN) |
126 |
| - $(CP) $(call NATIVEPATH,$(BIN)/*) $(INSTALLBIN) |
127 |
| - $(MAKE) -C $(GRAPHXDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
128 |
| - $(MAKE) -C $(KEYPADCDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
129 |
| - $(MAKE) -C $(FILEIOCDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
130 |
| - $(MAKE) -C $(CEDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
131 |
| - $(MAKE) -C $(STDDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
132 |
| - |
133 |
| -$(DIRS): |
134 |
| - $(MKDIR) $(INSTALLBIN) |
135 |
| - $(MKDIR) $(INSTALLLIB) |
136 |
| - $(MKDIR) $(INSTALLINC) |
137 |
| - $(MKDIR) $(call NATIVEPATH,$(INSTALLLIB)/asm) |
138 |
| - $(MKDIR) $(call NATIVEPATH,$(INSTALLINC)/ce) |
139 |
| - $(MKDIR) $(call NATIVEPATH,$(INSTALLINC)/std) |
140 |
| - $(MKDIR) $(call NATIVEPATH,$(INSTALLINC)/ce/libs) |
141 |
| - |
142 |
| - |
143 |
| -.PHONY: all clean graphx clean-graphx fileioc clean-fileioc keypadc clean-keypadc install uninstall |
144 |
| - |
| 1 | +#---------------------------- |
| 2 | +# Makefile |
| 3 | +#---------------------------- |
| 4 | + |
| 5 | +# common/os specific things |
| 6 | +ifeq ($(OS),Windows_NT) |
| 7 | +NATIVEPATH = $(subst /,\,$(1)) |
| 8 | +WINPATH = $(NATIVEPATH) |
| 9 | +RM = del /f 2>nul |
| 10 | +RMDIR = rmdir /s /q |
| 11 | +MKDIR = mkdir |
| 12 | +PREFIX ?= C: |
| 13 | +INSTALLLOC := $(call NATIVEPATH,$(DESTDIR)$(PREFIX)) |
| 14 | +CP = copy /y |
| 15 | +EXMPL_DIR = $(call NATIVEPATH,$(INSTALLLOC)/CEdev/examples) |
| 16 | +CP_EXMPLS = (if not exist "$(EXMPL_DIR)" mkdir $(EXMPL_DIR)) && xcopy /s /e $(call NATIVEPATH,$(CURDIR)/examples) $(EXMPL_DIR) |
| 17 | +else |
| 18 | +NATIVEPATH = $(subst \,/,$(1)) |
| 19 | +WINPATH = $(shell winepath --windows $(1)) |
| 20 | +RM = rm -f |
| 21 | +MKDIR = mkdir -p |
| 22 | +RMDIR = rm -rf |
| 23 | +PREFIX ?= $(HOME) |
| 24 | +INSTALLLOC := $(call NATIVEPATH,$(DESTDIR)$(PREFIX)) |
| 25 | +CP = cp |
| 26 | +CP_EXMPLS = cp -r $(call NATIVEPATH,$(CURDIR)/examples) $(call NATIVEPATH,$(INSTALLLOC)/CEdev) |
| 27 | +endif |
| 28 | + |
| 29 | +TOOLSDIR := $(call NATIVEPATH,$(CURDIR)/tools) |
| 30 | +SRCDIR := $(call NATIVEPATH,$(CURDIR)/src) |
| 31 | +SPASMDIR := $(call NATIVEPATH,$(TOOLSDIR)/spasm-ng) |
| 32 | +CONVHEXDIR := $(call NATIVEPATH,$(TOOLSDIR)/convhex) |
| 33 | +CONVPNGDIR := $(call NATIVEPATH,$(TOOLSDIR)/convpng) |
| 34 | + |
| 35 | +CEDIR := $(call NATIVEPATH,$(SRCDIR)/ce) |
| 36 | +STDDIR := $(call NATIVEPATH,$(SRCDIR)/std) |
| 37 | + |
| 38 | +SPASM := $(call NATIVEPATH,$(SPASMDIR)/spasm) |
| 39 | +CONVHEX := $(call NATIVEPATH,$(CONVHEXDIR)/convhex) |
| 40 | +CONVPNG := $(call NATIVEPATH,$(CONVPNGDIR)/convpng) |
| 41 | + |
| 42 | + |
| 43 | +ifeq ($(OS),Windows_NT) |
| 44 | +SPASM := $(call NATIVEPATH,$(SPASMDIR)/spasm.exe) |
| 45 | +CONVHEX := $(call NATIVEPATH,$(CONVHEXDIR)/convhex.exe) |
| 46 | +CONVPNG := $(call NATIVEPATH,$(CONVPNGDIR)/convpng.exe) |
| 47 | +endif |
| 48 | + |
| 49 | +BIN := $(call NATIVEPATH,$(TOOLSDIR)/zds) |
| 50 | + |
| 51 | +GRAPHXDIR := $(call NATIVEPATH,$(SRCDIR)/graphx) |
| 52 | +KEYPADCDIR := $(call NATIVEPATH,$(SRCDIR)/keypadc) |
| 53 | +FILEIOCDIR := $(call NATIVEPATH,$(SRCDIR)/fileioc) |
| 54 | + |
| 55 | +INSTALLBIN := $(call NATIVEPATH,$(INSTALLLOC)/CEdev/bin) |
| 56 | +INSTALLINC := $(call NATIVEPATH,$(INSTALLLOC)/CEdev/include) |
| 57 | +INSTALLLIB := $(call NATIVEPATH,$(INSTALLLOC)/CEdev/lib) |
| 58 | +DIRS := $(INSTALLINC) $(INSTALLINC)/ce $(INSTALLINC)/ce/libs $(INSTALLINC)/std $(INSTALLBIN) $(INSTALLLIB) |
| 59 | +DIRS := $(call NATIVEPATH,$(DIRS)) |
| 60 | + |
| 61 | +all: $(SPASM) $(CONVHEX) $(CONVPNG) graphx fileioc keypadc ce std |
| 62 | + |
| 63 | +#---------------------------- |
| 64 | +# tool rules |
| 65 | +#---------------------------- |
| 66 | +$(SPASM) $(CONVHEX) $(CONVPNG): |
| 67 | + $(MAKE) -C $(dir $@) |
| 68 | + |
| 69 | +clean: clean-graphx clean-fileioc clean-keypadc clean-ce clean-std |
| 70 | + $(MAKE) -C $(SPASMDIR) clean |
| 71 | + $(MAKE) -C $(CONVHEXDIR) clean |
| 72 | + $(MAKE) -C $(CONVPNGDIR) clean |
| 73 | +#---------------------------- |
| 74 | + |
| 75 | +#---------------------------- |
| 76 | +# ce rules |
| 77 | +#---------------------------- |
| 78 | +ce: |
| 79 | + $(MAKE) -C $(CEDIR) BIN=$(BIN) |
| 80 | + |
| 81 | +clean-ce: |
| 82 | + $(MAKE) -C $(CEDIR) clean |
| 83 | +#---------------------------- |
| 84 | + |
| 85 | +#---------------------------- |
| 86 | +# std rules |
| 87 | +#---------------------------- |
| 88 | +std: |
| 89 | + $(MAKE) -C $(STDDIR) BIN=$(BIN) |
| 90 | +clean-std: |
| 91 | + $(MAKE) -C $(STDDIR) clean |
| 92 | +#---------------------------- |
| 93 | + |
| 94 | +#---------------------------- |
| 95 | +# graphx rules |
| 96 | +#---------------------------- |
| 97 | +graphx: $(SPASM) |
| 98 | + $(MAKE) -C $(GRAPHXDIR) SPASM=$(SPASM) BIN=$(BIN) |
| 99 | +clean-graphx: |
| 100 | + $(MAKE) -C $(GRAPHXDIR) clean |
| 101 | +install-graphx: |
| 102 | + $(MAKE) -C $(GRAPHXDIR) install |
| 103 | +uninstall-graphx: |
| 104 | + $(MAKE) -C $(GRAPHXDIR) uninstall |
| 105 | +#---------------------------- |
| 106 | + |
| 107 | +#---------------------------- |
| 108 | +# fileioc rules |
| 109 | +#---------------------------- |
| 110 | +fileioc: $(SPASM) |
| 111 | + $(MAKE) -C $(FILEIOCDIR) SPASM=$(SPASM) BIN=$(BIN) |
| 112 | +clean-fileioc: |
| 113 | + $(MAKE) -C $(FILEIOCDIR) clean |
| 114 | +#---------------------------- |
| 115 | + |
| 116 | +#---------------------------- |
| 117 | +# keypadc rules |
| 118 | +#---------------------------- |
| 119 | +keypadc: $(SPASM) |
| 120 | + $(MAKE) -C $(KEYPADCDIR) SPASM=$(SPASM) BIN=$(BIN) |
| 121 | +clean-keypadc: |
| 122 | + $(MAKE) -C $(KEYPADCDIR) clean |
| 123 | +#---------------------------- |
| 124 | + |
| 125 | +uninstall: |
| 126 | + $(RMDIR) $(call NATIVEPATH,$(INSTALLLOC)/CEdev) |
| 127 | + |
| 128 | +install: $(DIRS) |
| 129 | + $(CP_EXMPLS) |
| 130 | + $(CP) $(call NATIVEPATH,$(SRCDIR)/asm/*) $(call NATIVEPATH,$(INSTALLLIB)/asm) |
| 131 | + $(CP) $(call NATIVEPATH,$(SRCDIR)/example_makefile) $(call NATIVEPATH,$(INSTALLINC)/.makefile) |
| 132 | + $(CP) $(SPASM) $(INSTALLBIN) |
| 133 | + $(CP) $(CONVHEX) $(INSTALLBIN) |
| 134 | + $(CP) $(CONVPNG) $(INSTALLBIN) |
| 135 | + $(CP) $(call NATIVEPATH,$(BIN)/*) $(INSTALLBIN) |
| 136 | + $(MAKE) -C $(GRAPHXDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
| 137 | + $(MAKE) -C $(KEYPADCDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
| 138 | + $(MAKE) -C $(FILEIOCDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
| 139 | + $(MAKE) -C $(CEDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
| 140 | + $(MAKE) -C $(STDDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR) |
| 141 | + |
| 142 | +$(DIRS): |
| 143 | + $(MKDIR) $(INSTALLBIN) |
| 144 | + $(MKDIR) $(INSTALLLIB) |
| 145 | + $(MKDIR) $(INSTALLINC) |
| 146 | + $(MKDIR) $(call NATIVEPATH,$(INSTALLLIB)/asm) |
| 147 | + $(MKDIR) $(call NATIVEPATH,$(INSTALLINC)/ce) |
| 148 | + $(MKDIR) $(call NATIVEPATH,$(INSTALLINC)/std) |
| 149 | + $(MKDIR) $(call NATIVEPATH,$(INSTALLINC)/ce/libs) |
| 150 | + |
| 151 | + |
| 152 | +.PHONY: all clean graphx clean-graphx fileioc clean-fileioc keypadc clean-keypadc install uninstall |
| 153 | + |
0 commit comments