@@ -7,77 +7,109 @@ VERSION = $(shell grep -m1 'Version = ' $(PROJECT).go | cut -d\` -f 2)
7
7
8
8
BRANCH = $(shell git branch | grep '* ' | cut -d\ -f 2)
9
9
10
- build : bin/csvcols bin/csvrows bin/csvfind bin/csvjoin bin/jsoncols bin/jsonrange bin/xlsx2json bin/xlsx2csv bin/csv2mdtable bin/csv2xlsx bin/csv2json bin/vcard2json bin/jsonjoin bin/jsonmunge bin/findfile bin/finddir bin/mergepath bin/reldate bin/range bin/timefmt bin/urlparse bin/splitstring bin/csvcleaner
10
+ OS = $( shell uname)
11
11
12
+ EXT =
13
+ ifeq ($(OS ) , Windows)
14
+ EXT = .exe
15
+ endif
12
16
13
- bin/csvcols : datatools.go cmds/csvcols/csvcols.go
14
- go build -o bin/csvcols cmds/csvcols/csvcols.go
15
17
16
- bin/csvrows : datatools.go cmds/csvrows/csvrows.go
17
- go build -o bin/csvrows cmds/csvrows/csvrows.go
18
+ build$(EXT ) : bin/csvcols$(EXT ) bin/csvrows$(EXT ) bin/csvfind$(EXT ) bin/csvjoin$(EXT ) bin/jsoncols$(EXT ) bin/jsonrange$(EXT ) bin/xlsx2json$(EXT ) bin/xlsx2csv$(EXT ) bin/csv2mdtable$(EXT ) bin/csv2xlsx$(EXT ) bin/csv2json$(EXT ) bin/vcard2json$(EXT ) bin/jsonjoin$(EXT ) bin/jsonmunge$(EXT ) bin/findfile$(EXT ) bin/finddir$(EXT ) bin/mergepath$(EXT ) bin/reldate$(EXT ) bin/range$(EXT ) bin/timefmt$(EXT ) bin/urlparse$(EXT ) bin/splitstring$(EXT ) bin/joinstring$(EXT ) bin/hasprefix$(EXT ) bin/hassuffix$(EXT ) bin/trimprefix$(EXT ) bin/trimsuffix$(EXT ) bin/tolower$(EXT ) bin/toupper$(EXT ) bin/totitle$(EXT ) bin/csvcleaner$(EXT )
18
19
19
- bin/csvjoin : datatools.go cmds/csvjoin/csvjoin.go
20
- go build -o bin/csvjoin cmds/csvjoin/csvjoin.go
21
20
22
- bin/jsoncols : datatools.go cmds/jsoncols/jsoncols .go
23
- go build -o bin/jsoncols cmds/jsoncols/jsoncols .go
21
+ bin/csvcols $( EXT ) : datatools.go cmds/csvcols/csvcols .go
22
+ go build -o bin/csvcols $( EXT ) cmds/csvcols/csvcols .go
24
23
25
- bin/jsonrange : datatools.go cmds/jsonrange/jsonrange .go
26
- go build -o bin/jsonrange cmds/jsonrange/jsonrange .go
24
+ bin/csvrows $( EXT ) : datatools.go cmds/csvrows/csvrows .go
25
+ go build -o bin/csvrows $( EXT ) cmds/csvrows/csvrows .go
27
26
28
- bin/xlsx2json : datatools.go cmds/xlsx2json/xlsx2json .go
29
- go build -o bin/xlsx2json cmds/xlsx2json/xlsx2json .go
27
+ bin/csvjoin $( EXT ) : datatools.go cmds/csvjoin/csvjoin .go
28
+ go build -o bin/csvjoin $( EXT ) cmds/csvjoin/csvjoin .go
30
29
31
- bin/xlsx2csv : datatools.go cmds/xlsx2csv/xlsx2csv .go
32
- go build -o bin/xlsx2csv cmds/xlsx2csv/xlsx2csv .go
30
+ bin/jsoncols $( EXT ) : datatools.go cmds/jsoncols/jsoncols .go
31
+ go build -o bin/jsoncols $( EXT ) cmds/jsoncols/jsoncols .go
33
32
34
- bin/csv2mdtable : datatools.go cmds/csv2mdtable/csv2mdtable .go
35
- go build -o bin/csv2mdtable cmds/csv2mdtable/csv2mdtable .go
33
+ bin/jsonrange $( EXT ) : datatools.go cmds/jsonrange/jsonrange .go
34
+ go build -o bin/jsonrange $( EXT ) cmds/jsonrange/jsonrange .go
36
35
37
- bin/csv2xlsx : datatools.go cmds/csv2xlsx/csv2xlsx .go
38
- go build -o bin/csv2xlsx cmds/csv2xlsx/csv2xlsx .go
36
+ bin/xlsx2json $( EXT ) : datatools.go cmds/xlsx2json/xlsx2json .go
37
+ go build -o bin/xlsx2json $( EXT ) cmds/xlsx2json/xlsx2json .go
39
38
40
- bin/csv2json : datatools.go cmds/csv2json/csv2json .go
41
- go build -o bin/csv2json cmds/csv2json/csv2json .go
39
+ bin/xlsx2csv $( EXT ) : datatools.go cmds/xlsx2csv/xlsx2csv .go
40
+ go build -o bin/xlsx2csv $( EXT ) cmds/xlsx2csv/xlsx2csv .go
42
41
43
- bin/csvfind : datatools.go cmds/csvfind/csvfind .go
44
- go build -o bin/csvfind cmds/csvfind/csvfind .go
42
+ bin/csv2mdtable $( EXT ) : datatools.go cmds/csv2mdtable/csv2mdtable .go
43
+ go build -o bin/csv2mdtable $( EXT ) cmds/csv2mdtable/csv2mdtable .go
45
44
46
- bin/vcard2json : datatools.go cmds/vcard2json/vcard2json .go
47
- go build -o bin/vcard2json cmds/vcard2json/vcard2json .go
45
+ bin/csv2xlsx $( EXT ) : datatools.go cmds/csv2xlsx/csv2xlsx .go
46
+ go build -o bin/csv2xlsx $( EXT ) cmds/csv2xlsx/csv2xlsx .go
48
47
49
- bin/jsonmunge : datatools.go cmds/jsonmunge/jsonmunge .go
50
- go build -o bin/jsonmunge cmds/jsonmunge/jsonmunge .go
48
+ bin/csv2json $( EXT ) : datatools.go cmds/csv2json/csv2json .go
49
+ go build -o bin/csv2json $( EXT ) cmds/csv2json/csv2json .go
51
50
52
- bin/jsonjoin : datatools.go cmds/jsonjoin/jsonjoin .go
53
- go build -o bin/jsonjoin cmds/jsonjoin/jsonjoin .go
51
+ bin/csvfind $( EXT ) : datatools.go cmds/csvfind/csvfind .go
52
+ go build -o bin/csvfind $( EXT ) cmds/csvfind/csvfind .go
54
53
55
- bin/findfile : datatools.go cmds/findfile/findfile .go
56
- go build -o bin/findfile cmds/findfile/findfile .go
54
+ bin/vcard2json $( EXT ) : datatools.go cmds/vcard2json/vcard2json .go
55
+ go build -o bin/vcard2json $( EXT ) cmds/vcard2json/vcard2json .go
57
56
58
- bin/finddir : datatools.go cmds/finddir/finddir .go
59
- go build -o bin/finddir cmds/finddir/finddir .go
57
+ bin/jsonmunge $( EXT ) : datatools.go cmds/jsonmunge/jsonmunge .go
58
+ go build -o bin/jsonmunge $( EXT ) cmds/jsonmunge/jsonmunge .go
60
59
61
- bin/mergepath : datatools.go cmds/mergepath/mergepath .go
62
- go build -o bin/mergepath cmds/mergepath/mergepath .go
60
+ bin/jsonjoin $( EXT ) : datatools.go cmds/jsonjoin/jsonjoin .go
61
+ go build -o bin/jsonjoin $( EXT ) cmds/jsonjoin/jsonjoin .go
63
62
64
- bin/reldate : datatools.go cmds/reldate/reldate .go
65
- go build -o bin/reldate cmds/reldate/reldate .go
63
+ bin/findfile $( EXT ) : datatools.go cmds/findfile/findfile .go
64
+ go build -o bin/findfile $( EXT ) cmds/findfile/findfile .go
66
65
67
- bin/range : datatools.go cmds/range/range .go
68
- go build -o bin/range cmds/range/range .go
66
+ bin/finddir $( EXT ) : datatools.go cmds/finddir/finddir .go
67
+ go build -o bin/finddir $( EXT ) cmds/finddir/finddir .go
69
68
70
- bin/timefmt : datatools.go cmds/timefmt/timefmt .go
71
- go build -o bin/timefmt cmds/timefmt/timefmt .go
69
+ bin/mergepath $( EXT ) : datatools.go cmds/mergepath/mergepath .go
70
+ go build -o bin/mergepath $( EXT ) cmds/mergepath/mergepath .go
72
71
73
- bin/urlparse : datatools.go cmds/urlparse/urlparse .go
74
- go build -o bin/urlparse cmds/urlparse/urlparse .go
72
+ bin/reldate $( EXT ) : datatools.go cmds/reldate/reldate .go
73
+ go build -o bin/reldate $( EXT ) cmds/reldate/reldate .go
75
74
76
- bin/splitstring : datatools.go cmds/splitstring/splitstring .go
77
- go build -o bin/splitstring cmds/splitstring/splitstring .go
75
+ bin/range $( EXT ) : datatools.go cmds/range/range .go
76
+ go build -o bin/range $( EXT ) cmds/range/range .go
78
77
79
- bin/csvcleaner : datatools.go cmds/csvcleaner/csvcleaner.go
80
- go build -o bin/csvcleaner cmds/csvcleaner/csvcleaner.go
78
+ bin/timefmt$(EXT ) : datatools.go cmds/timefmt/timefmt.go
79
+ go build -o bin/timefmt$(EXT ) cmds/timefmt/timefmt.go
80
+
81
+ bin/urlparse$(EXT ) : datatools.go cmds/urlparse/urlparse.go
82
+ go build -o bin/urlparse$(EXT ) cmds/urlparse/urlparse.go
83
+
84
+ bin/splitstring$(EXT ) : datatools.go cmds/splitstring/splitstring.go
85
+ go build -o bin/splitstring$(EXT ) cmds/splitstring/splitstring.go
86
+
87
+ bin/joinstring$(EXT ) : datatools.go cmds/joinstring/joinstring.go
88
+ go build -o bin/joinstring$(EXT ) cmds/joinstring/joinstring.go
89
+
90
+ bin/hasprefix$(EXT ) : datatools.go cmds/hasprefix/hasprefix.go
91
+ go build -o bin/hasprefix$(EXT ) cmds/hasprefix/hasprefix.go
92
+
93
+ bin/hassuffix$(EXT ) : datatools.go cmds/hassuffix/hassuffix.go
94
+ go build -o bin/hassuffix$(EXT ) cmds/hassuffix/hassuffix.go
95
+
96
+ bin/trimprefix$(EXT ) : datatools.go cmds/trimprefix/trimprefix.go
97
+ go build -o bin/trimprefix$(EXT ) cmds/trimprefix/trimprefix.go
98
+
99
+ bin/trimsuffix$(EXT ) : datatools.go cmds/trimsuffix/trimsuffix.go
100
+ go build -o bin/trimsuffix$(EXT ) cmds/trimsuffix/trimsuffix.go
101
+
102
+ bin/tolower$(EXT ) : datatools.go cmds/tolower/tolower.go
103
+ go build -o bin/tolower$(EXT ) cmds/tolower/tolower.go
104
+
105
+ bin/toupper$(EXT ) : datatools.go cmds/toupper/toupper.go
106
+ go build -o bin/toupper$(EXT ) cmds/toupper/toupper.go
107
+
108
+ bin/totitle$(EXT ) : datatools.go cmds/totitle/totitle.go
109
+ go build -o bin/totitle$(EXT ) cmds/totitle/totitle.go
110
+
111
+ bin/csvcleaner$(EXT ) : datatools.go cmds/csvcleaner/csvcleaner.go
112
+ go build -o bin/csvcleaner$(EXT ) cmds/csvcleaner/csvcleaner.go
81
113
82
114
test :
83
115
go test
@@ -127,6 +159,14 @@ install:
127
159
env GOBIN=$(GOPATH ) /bin go install cmds/xlsx2json/xlsx2json.go
128
160
env GOBIN=$(GOPATH ) /bin go install cmds/xlsx2csv/xlsx2csv.go
129
161
env GOBIN=$(GOPATH ) /bin go install cmds/splitstring/splitstring.go
162
+ env GOBIN=$(GOPATH ) /bin go install cmds/joinstring/joinstring.go
163
+ env GOBIN=$(GOPATH ) /bin go install cmds/hasprefix/hasprefix.go
164
+ env GOBIN=$(GOPATH ) /bin go install cmds/hassuffix/hassuffix.go
165
+ env GOBIN=$(GOPATH ) /bin go install cmds/trimprefix/trimprefix.go
166
+ env GOBIN=$(GOPATH ) /bin go install cmds/trimsuffix/trimsuffix.go
167
+ env GOBIN=$(GOPATH ) /bin go install cmds/tolower/tolower.go
168
+ env GOBIN=$(GOPATH ) /bin go install cmds/toupper/toupper.go
169
+ env GOBIN=$(GOPATH ) /bin go install cmds/totitle/totitle.go
130
170
env GOBIN=$(GOPATH ) /bin go install cmds/csvcleaner/csvcleaner.go
131
171
132
172
dist/linux-amd64 :
@@ -153,6 +193,14 @@ dist/linux-amd64:
153
193
env GOOS=linux GOARCH=amd64 go build -o dist/bin/timefmt cmds/timefmt/timefmt.go
154
194
env GOOS=linux GOARCH=amd64 go build -o dist/bin/urlparse cmds/urlparse/urlparse.go
155
195
env GOOS=linux GOARCH=amd64 go build -o dist/bin/splitstring cmds/splitstring/splitstring.go
196
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/joinstring cmds/joinstring/joinstring.go
197
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/hasprefix cmds/hasprefix/hasprefix.go
198
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/hassuffix cmds/hassuffix/hassuffix.go
199
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/trimprefix cmds/trimprefix/trimprefix.go
200
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/trimsuffix cmds/trimsuffix/trimsuffix.go
201
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/tolower cmds/tolower/tolower.go
202
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/toupper cmds/toupper/toupper.go
203
+ env GOOS=linux GOARCH=amd64 go build -o dist/bin/totitle cmds/totitle/totitle.go
156
204
env GOOS=linux GOARCH=amd64 go build -o dist/bin/csvcleaner cmds/csvcleaner/csvcleaner.go
157
205
cd dist && zip -r $(PROJECT ) -$(VERSION ) -linux-amd64.zip README.md LICENSE INSTALL.md bin/* docs/* how-to/* demos/*
158
206
rm -fR dist/bin
@@ -182,6 +230,14 @@ dist/macosx-amd64:
182
230
env GOOS=darwin GOARCH=amd64 go build -o dist/bin/timefmt cmds/timefmt/timefmt.go
183
231
env GOOS=darwin GOARCH=amd64 go build -o dist/bin/urlparse cmds/urlparse/urlparse.go
184
232
env GOOS=darwin GOARCH=amd64 go build -o dist/bin/splitstring cmds/splitstring/splitstring.go
233
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/joinstring cmds/joinstring/joinstring.go
234
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/hasprefix cmds/hasprefix/hasprefix.go
235
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/hassuffix cmds/hassuffix/hassuffix.go
236
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/trimprefix cmds/trimprefix/trimprefix.go
237
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/trimsuffix cmds/trimsuffix/trimsuffix.go
238
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/tolower cmds/tolower/tolower.go
239
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/toupper cmds/toupper/toupper.go
240
+ env GOOS=darwin GOARCH=amd64 go build -o dist/bin/totitle cmds/totitle/totitle.go
185
241
env GOOS=darwin GOARCH=amd64 go build -o dist/bin/csvcleaner cmds/csvcleaner/csvcleaner.go
186
242
cd dist && zip -r $(PROJECT ) -$(VERSION ) -macosx-amd64.zip README.md LICENSE INSTALL.md bin/* docs/* how-to/* demos/*
187
243
rm -fR dist/bin
@@ -212,6 +268,14 @@ dist/windows-amd64:
212
268
env GOOS=windows GOARCH=amd64 go build -o dist/bin/timefmt.exe cmds/timefmt/timefmt.go
213
269
env GOOS=windows GOARCH=amd64 go build -o dist/bin/urlparse.exe cmds/urlparse/urlparse.go
214
270
env GOOS=windows GOARCH=amd64 go build -o dist/bin/splitstring.exe cmds/splitstring/splitstring.go
271
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/joinstring.exe cmds/joinstring/joinstring.go
272
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/hasprefix.exe cmds/hasprefix/hasprefix.go
273
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/hassuffix.exe cmds/hassuffix/hassuffix.go
274
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/trimprefix.exe cmds/trimprefix/trimprefix.go
275
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/trimsuffix.exe cmds/trimsuffix/trimsuffix.go
276
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/tolower.exe cmds/tolower/tolower.go
277
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/toupper.exe cmds/toupper/toupper.go
278
+ env GOOS=windows GOARCH=amd64 go build -o dist/bin/totitle.exe cmds/totitle/totitle.go
215
279
env GOOS=windows GOARCH=amd64 go build -o dist/bin/csvcleaner.exe cmds/csvcleaner/csvcleaner.go
216
280
cd dist && zip -r $(PROJECT ) -$(VERSION ) -windows-amd64.zip README.md LICENSE INSTALL.md bin/* docs/* how-to/* demos/*
217
281
rm -fR dist/bin
@@ -243,6 +307,14 @@ dist/raspbian-arm7:
243
307
env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/timefmt cmds/timefmt/timefmt.go
244
308
env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/urlparse cmds/urlparse/urlparse.go
245
309
env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/splitstring cmds/splitstring/splitstring.go
310
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/joinstring cmds/joinstring/joinstring.go
311
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/hasprefix cmds/hasprefix/hasprefix.go
312
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/hassuffix cmds/hassuffix/hassuffix.go
313
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/trimprefix cmds/trimprefix/trimprefix.go
314
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/trimsuffix cmds/trimsuffix/trimsuffix.go
315
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/tolower cmds/tolower/tolower.go
316
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/toupper cmds/toupper/toupper.go
317
+ env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/totitle cmds/totitle/totitle.go
246
318
env GOOS=linux GOARCH=arm GOARM=7 go build -o dist/bin/csvcleaner cmds/csvcleaner/csvcleaner.go
247
319
cd dist && zip -r $(PROJECT ) -$(VERSION ) -raspbian-arm7.zip README.md LICENSE INSTALL.md bin/* docs/* how-to/* demos/*
248
320
rm -fR dist/bin
0 commit comments