# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup cmake 1.1 PortGroup compiler_blacklist_versions 1.0 PortGroup github 1.0 github.setup Constellation iv 64c3a9c7c517063f29d90d449180ea8f6f4d946f version 2015.03.24 revision 0 categories devel license BSD maintainers {@barracuda156 gmail.com:vital.had} openmaintainer description ${name} is ECMA262 5.1 lexer and parser and engine project long_description {*}${description} written in C++/JS. checksums rmd160 8a5446eedf849aede8c7610fcdb39922f30805f6 \ sha256 f001266dd3a365e7ac3e7eb12fb77629177f58707d7e7e7a94a9de76d9c80b8c \ size 9268616 github.tarball_from archive patchfiles patch-lv5.diff \ patch-do-not-fetch-tools.diff # FIXME: building on aarch64 is fixed now, but binary still complains on launch: # https://github.com/Constellation/iv/issues/107 # Also, ideally we would want to build against our boehmgc, # but as of now it fails with undefined symbols: # GC_throw_bad_alloc() etc. # https://github.com/Constellation/iv/pull/109 patchfiles-append patch-gc-arm64.diff # https://github.com/Constellation/iv/pull/110 patchfiles-append patch-static-liblv5.diff # https://github.com/Constellation/iv/pull/111 patchfiles-append patch-fpu.h-fix-i386-on-macOS.diff post-patch { reinplace "s|__PREFIX__|${prefix}|" \ ${worksrcpath}/iv/lv5/CMakeLists.txt reinplace "s|__ARCH__|${configure.build_arch}|" \ ${worksrcpath}/iv/lv5/CMakeLists.txt } if {${os.platform} eq "darwin" && ${os.major} < 14} { depends_build-append \ port:git git.cmd ${prefix}/bin/git } compiler.cxx_standard 2011 compiler.blacklist-append {clang} configure.args-append \ -DJIT=OFF \ -DLTO=ON if {${os.platform} eq "darwin" && ${os.major} > 21} { configure.cppflags-append \ -D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION } # https://github.com/Constellation/iv/issues/104 if {${configure.build_arch} in [list arm i386 ppc]} { configure.args-append \ -DM32=ON if {[string match *gcc* ${configure.compiler}]} { configure.ldflags-append \ -latomic } } platform powerpc { configure.args-replace \ -DLTO=ON -DLTO=OFF } universal_variant no destroot { copy ${cmake.build_dir}/iv/lv5/lv5 ${destroot}${prefix}/bin foreach f {iv/lv5/liblv5.a \ iv/lv5/third_party/gc/libgc-lib.a \ iv/lv5/third_party/gc/libgcmt-dll.dylib iv/lv5/third_party/gc/libgcmt-lib.a iv/lv5/third_party/netlib_dtoa/libnetlib_dtoa.a iv/lv5/third_party/v8_dtoa/libv8_dtoa.a} { copy ${cmake.build_dir}/${f} ${destroot}${prefix}/lib } } # FIXME: there is a failure in the second batch of tests on PowerPC: # https://github.com/Constellation/iv/issues/106 # Note: use gdb-apple to debug, since native gdb is useless here due to: # https://gcc-help.gcc.gnu.narkive.com/sI2gcsUK/what-does-dwarf-error-cannot-find-type-of-die-mean test.run yes test.cmd ${cmake.build_dir}/iv/lv5/third_party/gc/tests/gctest \ && ${cmake.build_dir}/iv/test/iv_unit_tests \ && ${cmake.build_dir}/iv/lv5/test/lv5_unit_tests test.target