blob: 5389aae45db2b5767f7dc3ddd6dc6e6ccd06d304 [file] [edit]
# Copyright 2020 The Emscripten Authors. All rights reserved.
# Emscripten is available under two separate licenses, the MIT license and the
# University of Illinois/NCSA Open Source License. Both these licenses can be
# found in the LICENSE file.
import os
import shutil
import logging
VERSION = '5.2.1'
HASH = '4550e53c21cb1191a4581e363fc9d0610da53f7898ca8320f0d3ef6711e76bdda2609c2df15dc94c45e28bff8de441f1227ec2da7ea827cb3c0405af4faa4736'
def needed(settings):
return settings.USE_GIFLIB
def get(ports, settings, shared):
ports.fetch_project('giflib', f'https://storage.googleapis.com/webassembly/emscripten-ports/giflib-{VERSION}.tar.gz', f'giflib-{VERSION}', sha512hash=HASH)
def create(final):
logging.info('building port: giflib')
source_path = os.path.join(ports.get_dir(), 'giflib', f'giflib-{VERSION}')
dest_path = os.path.join(ports.get_build_dir(), 'giflib')
shutil.rmtree(dest_path, ignore_errors=True)
shutil.copytree(source_path, dest_path)
ports.install_headers(dest_path)
ports.build_port(dest_path, final)
return [shared.Cache.get_lib('libgif.a', create, what='port')]
def clear(ports, settings, shared):
shared.Cache.erase_lib('libgif.a')
def process_args(ports):
return []
def show():
return 'giflib (USE_GIFLIB=1; MIT license)'