File: gen_emscripten_html.sh

package info (click to toggle)
geogram 1.9.6-1
  • links: PTS, VCS
  • area: contrib
  • in suites: sid
  • size: 15,436 kB
  • sloc: cpp: 143,890; ansic: 10,098; perl: 1,430; sh: 1,199; yacc: 522; lex: 182; python: 157; javascript: 149; makefile: 17
file content (38 lines) | stat: -rwxr-xr-x 1,189 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/bash

# Generates a webpage around a .js executable compiled with Emscripten
#
# Usage: gen_emscripten_html.sh executable_name.js
#
#    or: gen_emscripten_html.sh executable_name.js  file1 file2 ... filen
#
#   The second form generates a "pseufo file system" that will be visible 
# from the executable using standard POSIX calls.


SCRIPTDIR=`dirname "$0"`
EXENAME=`basename $1 .js`
shift
FILES=$@

if [ -z $EXENAME ]
then
    echo "Usage: gen_emscripten_html.sh exename.js (optional list of files to pack)"
    exit -1
fi

if [ -z "$FILES" ]
then
   echo generating $EXENAME.html
   cat $SCRIPTDIR/template_emscripten.html | sed -e 's/%EXENAME%/'$EXENAME'/g' > $EXENAME.html
else
   echo packaging $FILES "---->" $EXENAME'_data.data' ',' $EXENAME'_data.js'
   python $EMSCRIPTEN/tools/file_packager.py $EXENAME'_data.data' --preload $FILES > $EXENAME'_data.js'
   echo generating $EXENAME.html
   cat $SCRIPTDIR/template_emscripten.html | sed -e 's/%EXENAME%/'$EXENAME'/g' \
       -e 's|<!-- DATAFILE -->|<script async type="text/javascript" src="'$EXENAME'_data.js"></script>|g' \
       > $EXENAME.html
fi

echo "copying FileSaver.js (required)"
cp $SCRIPTDIR/FileSaver.js .