blob: e3123a2bfca9b84f232bf8cd9d9dc3eb5ea15380 [file] [log] [blame]
Kevin Lubicke1b36fe2018-08-02 11:30:33 -04001build:
2 ./compile.sh
3
Kevin Lubickf14a3c02018-08-22 09:35:32 -04004npm: npm-test npm-debug
Kevin Lubicke1b36fe2018-08-02 11:30:33 -04005 mkdir -p ./npm-wasm/bin
6 mkdir -p ./npm-asmjs/bin
7 ./compile.sh
Kevin Lubickf14a3c02018-08-22 09:35:32 -04008 cp ../../out/pathkit/pathkit.js ./npm-wasm/bin
Kevin Lubicke1b36fe2018-08-02 11:30:33 -04009 cp ../../out/pathkit/pathkit.wasm ./npm-wasm/bin
Kevin Lubickf14a3c02018-08-22 09:35:32 -040010 ./compile.sh asm.js
11 cp ../../out/pathkit/pathkit.js ./npm-asmjs/bin/pathkit.js
12 cp ../../out/pathkit/pathkit.js.mem ./npm-asmjs/bin/pathkit.js.mem
Kevin Lubickb3d0e3e2018-08-03 12:24:06 -040013
Kevin Lubicke1b36fe2018-08-02 11:30:33 -040014publish:
15 cd npm-wasm; npm publish
Kevin Lubickd9936482018-08-24 10:44:16 -040016 cd npm-asmjs; npm publish
Kevin Lubicke1b36fe2018-08-02 11:30:33 -040017
18update-major:
19 cd npm-wasm; npm version major
Kevin Lubickf14a3c02018-08-22 09:35:32 -040020 cd ../npm-asmjs; npm version major
Kevin Lubicke1b36fe2018-08-02 11:30:33 -040021 echo "Don't forget to publish."
22
23update-minor:
24 cd npm-wasm; npm version minor
Kevin Lubickd9936482018-08-24 10:44:16 -040025 cd npm-asmjs; npm version minor
Kevin Lubicke1b36fe2018-08-02 11:30:33 -040026 echo "Don't forget to publish."
27
28update-patch:
29 cd npm-wasm; npm version patch
Kevin Lubickd9936482018-08-24 10:44:16 -040030 cd npm-asmjs; npm version patch
Kevin Lubicke1b36fe2018-08-02 11:30:33 -040031 echo "Don't forget to publish."
32
Kevin Lubick92c91712018-08-09 10:00:02 -040033# Build the library and run the tests. If developing locally, test-continuous is better
34# suited for that, although if you make changes to the C++/WASM code, you will need
35# to manually call make npm-test to re-build.
36test: npm-test
37 npm install
38 npx karma start ./karma.conf.js --single-run
Kevin Lubickf14a3c02018-08-22 09:35:32 -040039 ASM_JS=1 npx karma start ./karma.conf.js --single-run
Kevin Lubick92c91712018-08-09 10:00:02 -040040
41test-continuous:
42 echo "Assuming npm install has been run by user"
43 echo "Also assuming make npm-test has also been run by a user (if needed)"
44 npx karma start ./karma.conf.js --no-single-run --watch-poll
45
Kevin Lubickf14a3c02018-08-22 09:35:32 -040046test-continuous-asmjs:
47 echo "Assuming npm install has been run by user"
48 echo "Also assuming make npm-test has also been run by a user (if needed)"
49 ASM_JS=1 npx karma start ./karma.conf.js --no-single-run --watch-poll
50
Kevin Lubick92c91712018-08-09 10:00:02 -040051# Build the library and run the tests using the docker image. If developing locally,
52# test-docker-continuous is better, although if you make changes to the C++/WASM code,
53# you will need to manually call make npm-test to re-build.
Kevin Lubickcbcff382018-10-02 09:02:18 -040054test-docker:
55 mkdir -p ./npm-wasm/bin/test
56 mkdir -p ./npm-asmjs/bin/test
57 mkdir -p $$SKIA_ROOT/out/dockerbuild
58
59 docker run --rm -v $$SKIA_ROOT:/SRC -v $$SKIA_ROOT/out/dockerbuild:/OUT \
Kevin Lubicke70c6b12018-11-06 07:49:40 -050060gcr.io/skia-public/emsdk-release:1.38.16_v1 /SRC/infra/pathkit/build_pathkit.sh
Kevin Lubickcbcff382018-10-02 09:02:18 -040061 cp ../../out/dockerbuild/pathkit.js ./npm-wasm/bin/test/pathkit.js
62 cp ../../out/dockerbuild/pathkit.wasm ./npm-wasm/bin/test/pathkit.wasm
63
64 docker run --rm -v $$SKIA_ROOT:/SRC -v $$SKIA_ROOT/out/dockerbuild:/OUT \
Kevin Lubicke70c6b12018-11-06 07:49:40 -050065gcr.io/skia-public/emsdk-release:1.38.16_v1 /SRC/infra/pathkit/build_pathkit.sh asm.js
Kevin Lubickcbcff382018-10-02 09:02:18 -040066 cp ../../out/dockerbuild/pathkit.js ./npm-asmjs/bin/test/pathkit.js
67 cp ../../out/dockerbuild/pathkit.js.mem ./npm-asmjs/bin/test/pathkit.js.mem
68
Kevin Lubickf14a3c02018-08-22 09:35:32 -040069 docker run --shm-size=2gb -v $$SKIA_ROOT:/SRC gcr.io/skia-public/karma-chrome-tests:68.0.3440.106_v4 \
Kevin Lubickc7d05712018-08-31 10:03:23 -040070karma start /SRC/modules/pathkit/karma.conf.js --single-run
Kevin Lubickf14a3c02018-08-22 09:35:32 -040071 docker run --shm-size=2gb -v $$SKIA_ROOT:/SRC -e ASM_JS=1 gcr.io/skia-public/karma-chrome-tests:68.0.3440.106_v4 \
Kevin Lubickc7d05712018-08-31 10:03:23 -040072karma start /SRC/modules/pathkit/karma.conf.js --single-run
Kevin Lubick92c91712018-08-09 10:00:02 -040073
74test-docker-continuous:
75 echo "Assuming make npm-test has also been run by a user (if needed)"
Kevin Lubickf14a3c02018-08-22 09:35:32 -040076 docker run --shm-size=2gb -v $$SKIA_ROOT:/SRC gcr.io/skia-public/karma-chrome-tests:68.0.3440.106_v4 \
Kevin Lubickc7d05712018-08-31 10:03:23 -040077karma start /SRC/modules/pathkit/karma.conf.js --no-single-run
Kevin Lubickf14a3c02018-08-22 09:35:32 -040078
79test-docker-continuous-asmjs:
80 echo "Assuming make npm-test has also been run by a user (if needed)"
81 docker run --shm-size=2gb -v $$SKIA_ROOT:/SRC -e ASM_JS=1 gcr.io/skia-public/karma-chrome-tests:68.0.3440.106_v4 \
Kevin Lubickc7d05712018-08-31 10:03:23 -040082karma start /SRC/modules/pathkit/karma.conf.js --no-single-run
Kevin Lubick641bf872018-08-06 14:49:39 -040083
84npm-test:
85 # This compile time is typically faster than release and good for use with
86 # local-example-test
87 mkdir -p ./npm-wasm/bin/test
88 mkdir -p ./npm-asmjs/bin/test
89 ./compile.sh test
Kevin Lubickf14a3c02018-08-22 09:35:32 -040090 cp ../../out/pathkit/pathkit.js ./npm-wasm/bin/test/pathkit.js
Kevin Lubick641bf872018-08-06 14:49:39 -040091 cp ../../out/pathkit/pathkit.wasm ./npm-wasm/bin/test/pathkit.wasm
Kevin Lubickf14a3c02018-08-22 09:35:32 -040092 ./compile.sh asm.js test
93 cp ../../out/pathkit/pathkit.js ./npm-asmjs/bin/test/pathkit.js
94 cp ../../out/pathkit/pathkit.js.mem ./npm-asmjs/bin/test/pathkit.js.mem
Kevin Lubick641bf872018-08-06 14:49:39 -040095
96npm-debug:
97 # This compile time is typically faster than release and good for use with
98 # local-example-test
99 mkdir -p ./npm-wasm/bin/debug
100 mkdir -p ./npm-asmjs/bin/debug
101 ./compile.sh debug
Kevin Lubickf14a3c02018-08-22 09:35:32 -0400102 cp ../../out/pathkit/pathkit.js ./npm-wasm/bin/debug/pathkit.js
103 cp ../../out/pathkit/pathkit.wasm ./npm-wasm/bin/debug/pathkit.wasm
Kevin Lubickcbcff382018-10-02 09:02:18 -0400104 cp ../../out/pathkit/pathkit.wasm.map ./npm-wasm/bin/debug/pathkit.wasm.map
Kevin Lubickf14a3c02018-08-22 09:35:32 -0400105 ./compile.sh asm.js debug
106 cp ../../out/pathkit/pathkit.js ./npm-asmjs/bin/debug/pathkit.js
107 cp ../../out/pathkit/pathkit.js.map ./npm-asmjs/bin/debug/pathkit.js.map
Kevin Lubicke1b36fe2018-08-02 11:30:33 -0400108
Kevin Lubicke1b36fe2018-08-02 11:30:33 -0400109example:
Kevin Lubickbe5091c2018-08-31 10:45:18 -0400110 npm install pathkit-asmjs pathkit-wasm
Kevin Lubicke1b36fe2018-08-02 11:30:33 -0400111 echo "Go check out localhost:8000/npm-wasm/example.html"
Kevin Lubickb3d0e3e2018-08-03 12:24:06 -0400112 python serve.py
113
114local-example:
Kevin Lubickbe5091c2018-08-31 10:45:18 -0400115 rm -rf node_modules/pathkit-wasm
116 rm -rf node_modules/pathkit-asmjs
Kevin Lubickb3d0e3e2018-08-03 12:24:06 -0400117 mkdir -p node_modules
Kevin Lubickbe5091c2018-08-31 10:45:18 -0400118 ln -s -T ../npm-wasm node_modules/pathkit-wasm
119 ln -s -T ../npm-asmjs node_modules/pathkit-asmjs
Kevin Lubickf14a3c02018-08-22 09:35:32 -0400120 echo "Go check out http://localhost:8000/npm-wasm/example.html"
121 echo "or http://localhost:8000/npm-asmjs/example.html"
Kevin Lubickb3d0e3e2018-08-03 12:24:06 -0400122 python serve.py
123
Kevin Lubick641bf872018-08-06 14:49:39 -0400124local-example-test:
Kevin Lubickbe5091c2018-08-31 10:45:18 -0400125 rm -rf node_modules/pathkit-wasm
126 rm -rf node_modules/pathkit-asmjs
127 mkdir -p node_modules/pathkit-wasm
128 mkdir -p node_modules/pathkit-asmjs
129 ln -s -T ../../npm-wasm/bin/test node_modules/pathkit-wasm/bin
130 ln -s -T ../../npm-asmjs/bin/test node_modules/pathkit-asmjs/bin
Kevin Lubick641bf872018-08-06 14:49:39 -0400131 echo "Go check out localhost:8000/npm-wasm/example.html"
Kevin Lubickf14a3c02018-08-22 09:35:32 -0400132 echo "or http://localhost:8000/npm-asmjs/example.html"
Kevin Lubick641bf872018-08-06 14:49:39 -0400133 python serve.py
134
Kevin Lubickb3d0e3e2018-08-03 12:24:06 -0400135local-example-debug:
Kevin Lubickbe5091c2018-08-31 10:45:18 -0400136 rm -rf node_modules/pathkit-wasm
137 rm -rf node_modules/pathkit-asmjs
138 mkdir -p node_modules/pathkit-wasm
139 mkdir -p node_modules/pathkit-asmjs
140 ln -s -T ../../npm-wasm/bin/debug node_modules/pathkit-wasm/bin
141 ln -s -T ../../npm-asmjs/bin/debug node_modules/pathkit-asmjs/bin
Kevin Lubickb3d0e3e2018-08-03 12:24:06 -0400142 echo "Go check out localhost:8000/npm-wasm/example.html"
Kevin Lubickf14a3c02018-08-22 09:35:32 -0400143 echo "or http://localhost:8000/npm-asmjs/example.html"
Kevin Lubick774be5a2018-09-07 14:00:41 -0400144 python serve.py
Kevin Lubicke70c6b12018-11-06 07:49:40 -0500145