xref: /aosp_15_r20/external/skia/tools/serve_wasm.py (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker#!/usr/bin/env python3
2*c8dee2aaSAndroid Build Coastguard Worker# Copyright 2018 Google LLC
3*c8dee2aaSAndroid Build Coastguard Worker#
4*c8dee2aaSAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
5*c8dee2aaSAndroid Build Coastguard Worker# found in the LICENSE file.
6*c8dee2aaSAndroid Build Coastguard Worker#
7*c8dee2aaSAndroid Build Coastguard Worker# This is a simple webserver that applies the correct MIME type for .wasm files.
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard Workerimport http.server
10*c8dee2aaSAndroid Build Coastguard Workerimport socketserver
11*c8dee2aaSAndroid Build Coastguard Worker
12*c8dee2aaSAndroid Build Coastguard WorkerPORT = 8000
13*c8dee2aaSAndroid Build Coastguard Worker
14*c8dee2aaSAndroid Build Coastguard Workerclass Handler(http.server.SimpleHTTPRequestHandler):
15*c8dee2aaSAndroid Build Coastguard Worker    pass
16*c8dee2aaSAndroid Build Coastguard Worker
17*c8dee2aaSAndroid Build Coastguard WorkerHandler.extensions_map['.js'] = 'application/javascript'
18*c8dee2aaSAndroid Build Coastguard Worker# Without the correct MIME type, async compilation doesn't work
19*c8dee2aaSAndroid Build Coastguard WorkerHandler.extensions_map['.wasm'] = 'application/wasm'
20*c8dee2aaSAndroid Build Coastguard Worker
21*c8dee2aaSAndroid Build Coastguard Workerhttpd = socketserver.TCPServer(("", PORT), Handler)
22*c8dee2aaSAndroid Build Coastguard Worker
23*c8dee2aaSAndroid Build Coastguard Workerhttpd.serve_forever()
24