Skip to content

Commit 21d2c2f

Browse files
committed
Add setup.py
This installs the emsdk script as a proper Python entry point
1 parent e34773a commit 21d2c2f

25 files changed

+49
-13
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
*.pyc
22
__pycache__
3+
emsdk.egg-info
4+
dist
5+
build
36

47
# Support for --embedded configs
58
/.emscripten

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
recursive-include emsdk

emsdk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,4 @@ if [ -z "$EMSDK_PYTHON" ]; then
4444
EMSDK_PYTHON=python
4545
fi
4646

47-
exec "$EMSDK_PYTHON" "$0.py" "$@"
47+
exec "$EMSDK_PYTHON" "emsdkpy/$0.py" "$@"

emsdkpy/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from .emsdk import main # noqa
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

emsdk.py renamed to emsdkpy/emsdk.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2833,7 +2833,9 @@ def expand_sdk_name(name, activating):
28332833
return name
28342834

28352835

2836-
def main(args):
2836+
def main():
2837+
args = sys.argv[1:]
2838+
28372839
if not args:
28382840
errlog("Missing command; Type 'emsdk help' to get a list of commands.")
28392841
return 1
@@ -3268,4 +3270,4 @@ def print_tools(t):
32683270

32693271

32703272
if __name__ == '__main__':
3271-
sys.exit(main(sys.argv[1:]))
3273+
sys.exit(main())
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

scripts/create_release.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def main(args):
4949
release_info['releases'] = OrderedDict(reversed(releases))
5050
release_info['aliases']['latest'] = new_version
5151

52-
with open(os.path.join(root_dir, 'emscripten-releases-tags.json'), 'w') as f:
52+
with open(os.path.join(root_dir, 'emsdkpy', 'emscripten-releases-tags.json'), 'w') as f:
5353
f.write(json.dumps(release_info, indent=2))
5454
f.write('\n')
5555

scripts/update_bazel_workspace.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ cd $(dirname $0)/..
1212
# If the previous command succeeded. We are in the emsdk root. Check to make
1313
# sure the files and directories we need are present.
1414
if [[ $? = 0 ]]; then
15-
if [[ ! -f emscripten-releases-tags.json ]]; then
15+
if [[ ! -f emsdkpy/emscripten-releases-tags.json ]]; then
1616
echo "Cannot find emscripten-releases-tags.json."
1717
ERR=1
1818
fi
@@ -38,7 +38,7 @@ URL2=/wasm-binaries
3838

3939
# Get commit hash for $1 version
4040
get_hash () {
41-
echo $(grep "$1" emscripten-releases-tags.json | grep -v latest | grep -v asserts | cut -f4 -d\")
41+
echo $(grep "$1" emsdkpy/emscripten-releases-tags.json | grep -v latest | grep -v asserts | cut -f4 -d\")
4242
}
4343

4444
# Get sha256 for $1 os $2 extname $3 hash $4 architecture
@@ -65,7 +65,7 @@ append_revision () {
6565

6666
# Get the latest version number from emscripten-releases-tag.json.
6767
VER=$(grep -oP '(?<=latest\": \")([\d\.]+)(?=\")' \
68-
emscripten-releases-tags.json \
68+
emsdkpy/emscripten-releases-tags.json \
6969
| sed --expression "s/\./\\\./g")
7070

7171
append_revision ${VER}

setup.cfg

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
[metadata]
2+
name = emsdk
3+
version = 3.1.9
4+
description = Emscripten SDK
5+
long_description = file: README.md
6+
long_description_content_type = text/markdown
7+
license_file = LICENSE
8+
author = Emscripten authors
9+
url = https://github.com/emscripten-core/emsdk
10+
platforms = Windows, Linux, Mac OS X
11+
keywords = emscripten, sdk
12+
13+
[bdist_wheel]
14+
universal = 1
15+
16+
[options]
17+
include_package_data = True
18+
packages = find:
19+
python_requires = >=3.7
20+
21+
[options.entry_points]
22+
console_scripts =
23+
emsdk = emsdkpy.emsdk:main
24+
25+
[options.package_data]
26+
emsdkpy = *.txt, *.bat, *.csh, *.fish, *.ps1, *.sh, *.json

setup.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import setuptools
2+
3+
setuptools.setup()

test/test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ def hack_emsdk(marker, replacement):
8181

8282
# Set up
8383

84-
TAGS = json.loads(open('emscripten-releases-tags.json').read())
84+
TAGS = json.loads(open('emsdkpy/emscripten-releases-tags.json').read())
8585

8686
# Tests
8787

test/test_bazel.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ set -e
77

88
# Get the latest version number from emscripten-releases-tag.json.
99
VER=$(grep -oP '(?<=latest\": \")([\d\.]+)(?=\")' \
10-
emscripten-releases-tags.json \
10+
emsdkpy/emscripten-releases-tags.json \
1111
| sed --expression "s/\./\\\./g")
1212
# Based on the latest version number, get the commit hash for that version.
13-
HASH=$(grep "\"${VER}\"" emscripten-releases-tags.json \
13+
HASH=$(grep "\"${VER}\"" emsdkpy/emscripten-releases-tags.json \
1414
| grep -v latest \
1515
| cut -f4 -d\")
1616

@@ -31,4 +31,4 @@ bazel build //:hello-embind-wasm --compilation_mode dbg # debug
3131
# Test use of the closure compiler
3232
bazel build //:hello-embind-wasm --compilation_mode opt # release
3333
# This function should not be minified if the externs file is loaded correctly.
34-
grep "customJSFunctionToTestClosure" bazel-bin/hello-embind-wasm/hello-embind.js
34+
grep "customJSFunctionToTestClosure" bazel-bin/hello-embind-wasm/hello-embind.js

test/test_bazel_mac.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ set -e
77

88
# Get the latest version number from emscripten-releases-tag.json.
99
VER=$(ggrep -oP '(?<=latest\": \")([\d\.]+)(?=\")' \
10-
emscripten-releases-tags.json \
10+
emsdkpy/emscripten-releases-tags.json \
1111
| sed "s/\./\\\./g")
1212
# Based on the latest version number, get the commit hash for that version.
13-
HASH=$(grep "\"${VER}\"" emscripten-releases-tags.json \
13+
HASH=$(grep "\"${VER}\"" emsdkpy/emscripten-releases-tags.json \
1414
| grep -v latest \
1515
| cut -f4 -d\")
1616

0 commit comments

Comments
 (0)