@@ -12,70 +12,84 @@ help:
12
12
13
13
all : build # # build all
14
14
15
- build : clean # # clean, compile, copy files to build folder
16
-
17
- npm install --save node-fetch # install needed node-module
18
-
19
- mkdir -p build
20
- mkdir -p build/$(PLUGIN_NAME)
21
- mkdir -p build/$(PLUGIN_NAME)/webfrontend
22
- mkdir -p build/$(PLUGIN_NAME)/updater
23
- mkdir -p build/$(PLUGIN_NAME)/l10n
24
-
25
- mkdir -p src/tmp # build code from coffee
26
- cp easydb-library/src/commons.coffee src/tmp
27
- cp src/webfrontend/*.coffee src/tmp
28
- cd src/tmp && coffee -b --compile ${COFFEE_FILES} # bare-parameter is obligatory!
29
-
30
- # first: commons! Important
31
- cat src/tmp/commons.js > build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
32
-
33
- cat src/webfrontend/CustomDataTypeLoc.js >> build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
34
- cat src/webfrontend/CustomDataTypeLocFacet.js >> build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
35
- cat src/webfrontend/LocUtil.js >> build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
36
-
37
- cp src/updater/LocUpdater.js build/$(PLUGIN_NAME)/updater/LocUpdater.js # build updater
38
- cat src/webfrontend/LocUtil.js >> build/$(PLUGIN_NAME)/updater/LocUpdater.js
39
- cp package.json build/$(PLUGIN_NAME)/package.json
40
- cp -r node_modules build/$(PLUGIN_NAME)/
41
- rm -rf src/tmp # clean tmp
42
-
43
-
44
-
45
- mkdir src/temp_localization
46
- cp l10n/customDataTypeLoc.csv src/temp_localization
47
- cp easydb-library/src/commons.l10n.csv src/temp_localization
48
-
49
- # equalize number of columns in localization csv files
50
- @file1=src/temp_localization/customDataTypeLoc.csv \
51
- file2=src/temp_localization/commons.l10n.csv \
52
- cols1=$$(head -n 1 $$file1 | awk -F',' '{print NF}'); \
53
- cols2=$$(head -n 1 $$file2 | awk -F',' '{print NF}'); \
54
- echo "File1 columns: $$cols1, File2 columns: $$cols2"; \
55
- if [ $$cols1 -lt $$cols2 ]; then \
56
- diff=$$((cols2 - cols1)); \
57
- echo "Padding $$file1 with $$diff empty columns..."; \
58
- commas=$$(printf '%.0s,' $$(seq 1 $$diff)); \
59
- sed -i "s/$$/$$commas/" $$file1; \
60
- elif [ $$cols2 -lt $$cols1 ]; then \
61
- diff=$$((cols1 - cols2)); \
62
- echo "Padding $$file2 with $$diff empty columns..."; \
63
- commas=$$(printf '%.0s,' $$(seq 1 $$diff)); \
64
- sed -i "s/$$/$$commas/" $$file2; \
65
- else \
66
- echo "Files already have equal columns."; \
67
- fi
68
-
69
- cp src/temp_localization/customDataTypeLoc.csv build/$(PLUGIN_NAME)/l10n/customDataTypeLoc.csv # copy l10n
70
- echo "" >> build/$(PLUGIN_NAME)/l10n/customDataTypeLoc.csv # add line break to make sure csv is not broken after merge
71
- tail -n+2 src/temp_localization/commons.l10n.csv >> build/$(PLUGIN_NAME)/l10n/customDataTypeLoc.csv
72
- rm -rf src/temp_localization
73
-
74
- cp src/webfrontend/css/main.css build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.css # copy css
75
- cp manifest.master.yml build/$(PLUGIN_NAME)/manifest.yml # copy manifest
15
+ build : clean buildinfojson # # clean, compile, copy files to build folder
16
+
17
+ npm install --save node-fetch # install needed node-module
18
+
19
+ mkdir -p build
20
+ mkdir -p build/$(PLUGIN_NAME)
21
+ mkdir -p build/$(PLUGIN_NAME)/webfrontend
22
+ mkdir -p build/$(PLUGIN_NAME)/updater
23
+ mkdir -p build/$(PLUGIN_NAME)/l10n
24
+
25
+ cp build-info.json build/$(PLUGIN_NAME)/build-info.json # build-info
26
+
27
+ mkdir -p src/tmp # build code from coffee
28
+ cp easydb-library/src/commons.coffee src/tmp
29
+ cp src/webfrontend/*.coffee src/tmp
30
+ cd src/tmp && coffee -b --compile ${COFFEE_FILES} # bare-parameter is obligatory!
31
+
32
+ # first: commons! Important
33
+ cat src/tmp/commons.js > build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
34
+
35
+ cat src/webfrontend/CustomDataTypeLoc.js >> build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
36
+ cat src/webfrontend/CustomDataTypeLocFacet.js >> build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
37
+ cat src/webfrontend/LocUtil.js >> build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.js
38
+
39
+ cp src/updater/LocUpdater.js build/$(PLUGIN_NAME)/updater/LocUpdater.js # build updater
40
+ cat src/webfrontend/LocUtil.js >> build/$(PLUGIN_NAME)/updater/LocUpdater.js
41
+ cp package.json build/$(PLUGIN_NAME)/package.json
42
+ cp -r node_modules build/$(PLUGIN_NAME)/
43
+ rm -rf src/tmp # clean tmp
44
+
45
+
46
+
47
+ mkdir src/temp_localization
48
+ cp l10n/customDataTypeLoc.csv src/temp_localization
49
+ cp easydb-library/src/commons.l10n.csv src/temp_localization
50
+
51
+ # equalize number of columns in localization csv files
52
+ @file1=src/temp_localization/customDataTypeLoc.csv \
53
+ file2=src/temp_localization/commons.l10n.csv \
54
+ cols1=$$(head -n 1 $$file1 | awk -F',' '{print NF}'); \
55
+ cols2=$$(head -n 1 $$file2 | awk -F',' '{print NF}'); \
56
+ echo "File1 columns: $$cols1, File2 columns: $$cols2"; \
57
+ if [ $$cols1 -lt $$cols2 ]; then \
58
+ diff=$$((cols2 - cols1)); \
59
+ echo "Padding $$file1 with $$diff empty columns..."; \
60
+ commas=$$(printf '%.0s,' $$(seq 1 $$diff)); \
61
+ sed -i "s/$$/$$commas/" $$file1; \
62
+ elif [ $$cols2 -lt $$cols1 ]; then \
63
+ diff=$$((cols1 - cols2)); \
64
+ echo "Padding $$file2 with $$diff empty columns..."; \
65
+ commas=$$(printf '%.0s,' $$(seq 1 $$diff)); \
66
+ sed -i "s/$$/$$commas/" $$file2; \
67
+ else \
68
+ echo "Files already have equal columns."; \
69
+ fi
70
+
71
+ cp src/temp_localization/customDataTypeLoc.csv build/$(PLUGIN_NAME)/l10n/customDataTypeLoc.csv # copy l10n
72
+ echo "" >> build/$(PLUGIN_NAME)/l10n/customDataTypeLoc.csv # add line break to make sure csv is not broken after merge
73
+ tail -n+2 src/temp_localization/commons.l10n.csv >> build/$(PLUGIN_NAME)/l10n/customDataTypeLoc.csv
74
+ rm -rf src/temp_localization
75
+
76
+ cp src/webfrontend/css/main.css build/$(PLUGIN_NAME)/webfrontend/customDataTypeLoc.css # copy css
77
+ cp manifest.master.yml build/$(PLUGIN_NAME)/manifest.yml # copy manifest
76
78
77
79
clean : # # clean
78
80
rm -rf build
79
81
80
82
zip : build # # build zip file
81
83
cd build && zip ${ZIP_NAME} -r $(PLUGIN_NAME ) /
84
+
85
+ buildinfojson :
86
+ repo=` git remote get-url origin | sed -e ' s/\.git$$//' -e ' s#.*[/\\]##' ` ; \
87
+ rev=` git show --no-patch --format=%H` ; \
88
+ lastchanged=` git show --no-patch --format=%ad --date=format:%Y-%m-%dT%T%z` ; \
89
+ builddate=` date +" %Y-%m-%dT%T%z" ` ; \
90
+ echo ' {' > build-info.json ; \
91
+ echo ' "repository": "' $$ repo' ",' >> build-info.json ; \
92
+ echo ' "rev": "' $$ rev' ",' >> build-info.json ; \
93
+ echo ' "lastchanged": "' $$ lastchanged' ",' >> build-info.json ; \
94
+ echo ' "builddate": "' $$ builddate' "' >> build-info.json ; \
95
+ echo ' }' >> build-info.json
0 commit comments