not working -- look at nix emscripten support first before further work
This commit is contained in:
4
lib/spack/env/cc
vendored
4
lib/spack/env/cc
vendored
@@ -241,14 +241,14 @@ case "$command" in
|
||||
mode=cpp
|
||||
debug_flags="-g"
|
||||
;;
|
||||
cc|c89|c99|gcc|clang|armclang|icc|icx|pgcc|nvc|xlc|xlc_r|fcc|amdclang|cl.exe)
|
||||
cc|c89|c99|gcc|clang|armclang|icc|icx|pgcc|nvc|xlc|xlc_r|fcc|amdclang|cl.exe|emcc)
|
||||
command="$SPACK_CC"
|
||||
language="C"
|
||||
comp="CC"
|
||||
lang_flags=C
|
||||
debug_flags="-g"
|
||||
;;
|
||||
c++|CC|g++|clang++|armclang++|icpc|icpx|dpcpp|pgc++|nvc++|xlc++|xlc++_r|FCC|amdclang++)
|
||||
c++|CC|g++|clang++|armclang++|icpc|icpx|dpcpp|pgc++|nvc++|xlc++|xlc++_r|FCC|amdclang++|em++)
|
||||
command="$SPACK_CXX"
|
||||
language="C++"
|
||||
comp="CXX"
|
||||
|
1
lib/spack/env/emscripten/em++
vendored
Symbolic link
1
lib/spack/env/emscripten/em++
vendored
Symbolic link
@@ -0,0 +1 @@
|
||||
../cc
|
1
lib/spack/env/emscripten/emcc
vendored
Symbolic link
1
lib/spack/env/emscripten/emcc
vendored
Symbolic link
@@ -0,0 +1 @@
|
||||
../cc
|
@@ -15,8 +15,8 @@ class Emscripten(Compiler):
|
||||
cxx_names = ['em++']
|
||||
|
||||
# Named wrapper links within build_env_path
|
||||
link_paths = {'cc': os.path.join('upstream', 'emscripten', 'emcc'),
|
||||
'cxx': os.path.join('upstream', 'emscripten', 'em++'),
|
||||
link_paths = {'cc': os.path.join('emscripten', 'emcc'),
|
||||
'cxx': os.path.join('emscripten', 'em++'),
|
||||
'f77': '',
|
||||
'fc': ''}
|
||||
|
||||
@@ -31,3 +31,7 @@ def debug_flags(self):
|
||||
@property
|
||||
def opt_flags(self):
|
||||
return ['-O0', '-O1', '-O2', '-O3', '-Os', '-Oz']
|
||||
|
||||
@property
|
||||
def disable_new_dtags(self):
|
||||
return ''
|
||||
|
@@ -21,6 +21,8 @@ class AlsaLib(AutotoolsPackage):
|
||||
variant('python', default=False, description='enable python')
|
||||
|
||||
patch('python.patch', when='@1.1.4:1.1.5 +python')
|
||||
# Remove a type that only exists in the kernel.
|
||||
patch('s64.patch')
|
||||
|
||||
depends_on('python', type=('link', 'run'), when='+python')
|
||||
|
||||
|
12
var/spack/repos/builtin/packages/alsa-lib/s64.patch
Normal file
12
var/spack/repos/builtin/packages/alsa-lib/s64.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
diff --git a/include/alsa/sound/uapi/asound.h b/include/alsa/sound/uapi/asound.h
|
||||
index ec610c2..5f9724b 100644
|
||||
--- a/include/alsa/sound/uapi/asound.h
|
||||
+++ b/include/alsa/sound/uapi/asound.h2
|
||||
@@ -30,6 +30,7 @@
|
||||
#else
|
||||
#include <endian.h>
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
+typedef int64_t __s64;
|
||||
|
||||
#include <stdlib.h>
|
BIN
var/spack/repos/builtin/packages/emsdk/h2.wasm
Executable file
BIN
var/spack/repos/builtin/packages/emsdk/h2.wasm
Executable file
Binary file not shown.
2365
var/spack/repos/builtin/packages/emsdk/hello
Executable file
2365
var/spack/repos/builtin/packages/emsdk/hello
Executable file
File diff suppressed because it is too large
Load Diff
6
var/spack/repos/builtin/packages/emsdk/hello.c
Normal file
6
var/spack/repos/builtin/packages/emsdk/hello.c
Normal file
@@ -0,0 +1,6 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main() {
|
||||
printf("hello, world!\n");
|
||||
return 0;
|
||||
}
|
BIN
var/spack/repos/builtin/packages/emsdk/hello.o
Normal file
BIN
var/spack/repos/builtin/packages/emsdk/hello.o
Normal file
Binary file not shown.
BIN
var/spack/repos/builtin/packages/emsdk/hello.wasm
Executable file
BIN
var/spack/repos/builtin/packages/emsdk/hello.wasm
Executable file
Binary file not shown.
@@ -66,10 +66,11 @@ class Ffmpeg(AutotoolsPackage):
|
||||
variant('sdl2', default=False, description='sdl2 support')
|
||||
variant('shared', default=True, description='build shared libraries')
|
||||
variant('libx264', default=False, description='H.264 encoding')
|
||||
variant('alsa', default=True, when='platform=linux', description='Build ALSA support')
|
||||
|
||||
depends_on('alsa-lib', when='platform=linux')
|
||||
depends_on('alsa-lib', when='+alsa')
|
||||
depends_on('libiconv')
|
||||
depends_on('yasm@1.2.0:')
|
||||
# depends_on('yasm@1.2.0:')
|
||||
depends_on('zlib')
|
||||
|
||||
depends_on('aom', when='+libaom')
|
||||
@@ -132,6 +133,8 @@ def configure_args(self):
|
||||
'--cc={0}'.format(spack_cc),
|
||||
'--cxx={0}'.format(spack_cxx)
|
||||
]
|
||||
if '+alsa' not in self.spec:
|
||||
config_args.append('--disable-alsa')
|
||||
|
||||
# '+X' meta variant #
|
||||
|
||||
|
@@ -3,6 +3,11 @@
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
import os
|
||||
import stat
|
||||
|
||||
from llnl.util.filesystem import chmod_x
|
||||
|
||||
from spack import *
|
||||
|
||||
|
||||
@@ -23,3 +28,9 @@ class Yasm(AutotoolsPackage):
|
||||
depends_on('automake', when='@develop')
|
||||
depends_on('libtool', when='@develop')
|
||||
depends_on('m4', when='@develop')
|
||||
|
||||
@run_after('configure')
|
||||
def make_genversion_executable(self):
|
||||
with working_dir(self.stage.source_path):
|
||||
st = os.stat('./genversion')
|
||||
chmod_x('genversion', st.st_mode | stat.S_IXUSR)
|
||||
|
@@ -78,7 +78,10 @@ def install(self, spec, prefix):
|
||||
config_args = []
|
||||
if '~shared' in spec:
|
||||
config_args.append('--static')
|
||||
configure('--prefix={0}'.format(prefix), *config_args)
|
||||
if self.spec.satisfies('%emscripten'):
|
||||
emconfigure('--prefix={0}'.format(prefix), *config_args)
|
||||
else:
|
||||
configure('--prefix={0}'.format(prefix), *config_args)
|
||||
|
||||
make()
|
||||
if self.run_tests:
|
||||
|
Reference in New Issue
Block a user