2
2
# Makefile
3
3
# ----------------------------
4
4
5
+ RELEASE_NAME := CEdev
6
+
5
7
# common/os specific things
6
8
ifeq ($(OS ) ,Windows_NT)
7
9
NATIVEPATH = $(subst /,\,$(1 ) )
@@ -13,7 +15,20 @@ PREFIX ?= C:
13
15
INSTALLLOC := $(call NATIVEPATH,$(DESTDIR )$(PREFIX ) )
14
16
CP = copy /y
15
17
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 )
18
+ CP_EXMPLS = (if not exist "$(EXMPL_DIR ) " mkdir $(EXMPL_DIR ) ) && xcopy /y /s /e $(call NATIVEPATH,$(CURDIR ) /examples) $(EXMPL_DIR )
19
+ ZIPVBS = __zip.vbs
20
+ ARCH = cd $(INSTALLLOC ) && \
21
+ echo Set oArg = WScript.Arguments > $(ZIPVBS) && \
22
+ echo Set fso = CreateObject("Scripting.FileSystemObject") >> $(ZIPVBS) && \
23
+ echo inDir = fso.GetAbsolutePathName(oArg(0)) >> $(ZIPVBS) && \
24
+ echo outZip = fso.GetAbsolutePathName(oArg(1)) >> $(ZIPVBS) && \
25
+ echo fso.CreateTextFile(outZip, True).Write "PK" ^& Chr(5) ^& Chr(6) ^& String(18, vbNullChar) >> $(ZIPVBS) && \
26
+ echo Set oShell = CreateObject("Shell.Application") >> $(ZIPVBS) && \
27
+ echo Set src = oShell.NameSpace(inDir).Items >> $(ZIPVBS) && \
28
+ echo oShell.NameSpace(outZip).CopyHere(src) >> $(ZIPVBS) && \
29
+ echo wScript.Sleep 5000 >> $(ZIPVBS) && \
30
+ CScript $(ZIPVBS) $(RELEASE_NAME) $(RELEASE_NAME).zip && \
31
+ $(RM) $(ZIPVBS)
17
32
else
18
33
NATIVEPATH = $(subst \,/,$(1 ) )
19
34
WINPATH = $(shell winepath --windows $(1 ) )
@@ -24,6 +39,7 @@ PREFIX ?= $(HOME)
24
39
INSTALLLOC := $(call NATIVEPATH,$(DESTDIR )$(PREFIX ) )
25
40
CP = cp
26
41
CP_EXMPLS = cp -r $(call NATIVEPATH,$(CURDIR ) /examples) $(call NATIVEPATH,$(INSTALLLOC ) /CEdev)
42
+ ARCH = cd $(INSTALLLOC ) ; tar -czf $(RELEASE_NAME ) .tar.gz $(RELEASE_NAME )
27
43
endif
28
44
29
45
TOOLSDIR := $(call NATIVEPATH,$(CURDIR ) /tools)
@@ -52,9 +68,10 @@ GRAPHXDIR := $(call NATIVEPATH,$(SRCDIR)/graphx)
52
68
KEYPADCDIR := $(call NATIVEPATH,$(SRCDIR ) /keypadc)
53
69
FILEIOCDIR := $(call NATIVEPATH,$(SRCDIR ) /fileioc)
54
70
55
- INSTALLBIN := $(call NATIVEPATH,$(INSTALLLOC ) /CEdev/bin)
56
- INSTALLINC := $(call NATIVEPATH,$(INSTALLLOC ) /CEdev/include)
57
- INSTALLLIB := $(call NATIVEPATH,$(INSTALLLOC ) /CEdev/lib)
71
+ CEDEVDIR := $(call NATIVEPATH,$(INSTALLLOC ) /$(RELEASE_NAME ) )
72
+ INSTALLBIN := $(call NATIVEPATH,$(INSTALLLOC ) /$(RELEASE_NAME ) /bin)
73
+ INSTALLINC := $(call NATIVEPATH,$(INSTALLLOC ) /$(RELEASE_NAME ) /include)
74
+ INSTALLLIB := $(call NATIVEPATH,$(INSTALLLOC ) /$(RELEASE_NAME ) /lib)
58
75
DIRS := $(INSTALLINC ) $(INSTALLINC ) /ce $(INSTALLINC ) /ce/libs $(INSTALLINC ) /std $(INSTALLBIN ) $(INSTALLLIB )
59
76
DIRS := $(call NATIVEPATH,$(DIRS ) )
60
77
@@ -98,10 +115,6 @@ graphx: $(SPASM)
98
115
$(MAKE ) -C $(GRAPHXDIR ) SPASM=$(SPASM ) BIN=$(BIN )
99
116
clean-graphx :
100
117
$(MAKE ) -C $(GRAPHXDIR ) clean
101
- install-graphx :
102
- $(MAKE ) -C $(GRAPHXDIR ) install
103
- uninstall-graphx :
104
- $(MAKE ) -C $(GRAPHXDIR ) uninstall
105
118
# ----------------------------
106
119
107
120
# ----------------------------
@@ -148,6 +161,27 @@ $(DIRS):
148
161
$(MKDIR ) $(call NATIVEPATH,$(INSTALLINC ) /std)
149
162
$(MKDIR ) $(call NATIVEPATH,$(INSTALLINC ) /ce/libs)
150
163
151
-
152
- .PHONY : all clean graphx clean-graphx fileioc clean-fileioc keypadc clean-keypadc install uninstall
164
+ dist : install
165
+ $(ARCH )
166
+
167
+ help :
168
+ @echo Available targets:
169
+ @echo all
170
+ @echo ce
171
+ @echo std
172
+ @echo graphx
173
+ @echo fileioc
174
+ @echo keypadc
175
+ @echo clean
176
+ @echo clean-ce
177
+ @echo clean-std
178
+ @echo clean-graphx
179
+ @echo clean-fileioc
180
+ @echo clean-keypadc
181
+ @echo install
182
+ @echo uninstall
183
+ @echo dist
184
+ @echo help
185
+
186
+ .PHONY : all clean graphx clean-graphx fileioc clean-fileioc keypadc clean-keypadc install uninstall help dist
153
187
0 commit comments