I have try to compile the sample example, on Mac (10.12.6), without success.
With Haxe nightly build : a2058ad (2017-11-24 23:06)
MAC:sample user$ make js
haxe -lib webidl --macro "SampleModule.buildLibCpp()"
haxe -lib webidl --macro "SampleModule.buildLibJS()"
> python /Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/emcc.py -O2 -c point.cpp -o point.bc
> python /Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/emcc.py -O2 -c libpoint.cpp -o libpoint.bc
> make -f Makefile.tmp
python "/Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/emcc.py" point.bc libpoint.bc -O2 -s EXPORT_NAME="'libpoint'" --memory-init-file 0 -o libpoint.js
extract archive contents(/Users/user/.emscripten_cache/asmjs/libcxx_noexcept.a) failed with error: llvm-ar failed to extract file(s) ['/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/any_6dd8e4e1.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/bind_854a22e6.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/chrono_2aa73c48.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/condition_variable_7f188147.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/debug_ab332be3.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/exception_79e5900d.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/future_8fa8a270.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/hash_72828e53.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/ios_ac52e915.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/iostream_901f8d59.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/locale_1a06cfe0.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/memory_9c523531.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/mutex_da112174.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/new_5b5bcf2d.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/optional_ab2998f6.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/random_b07b8c86.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/regex_4fd6c5e5.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/shared_mutex_62a3e4d1.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/stdexcept_0b9fd5e0.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/string_a8ec1c3c.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/strstream_a72f5565.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/system_error_195de63a.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/thread_4405f6af.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/typeinfo_fa1dba93.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/utility_baafad1b.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/valarray_f119550e.cpp.o', '/private/var/folders/w4/h9j82c1933ggrt7fhtnl978nhk1650/T/emscripten_temp_Z9gcxh_archive_contents/variant_aac0e9c1.cpp.o'] from archive file /Users/user/.emscripten_cache/asmjs/libcxx_noexcept.a! Error:dyld: lazy symbol binding failed: Symbol not found: _futimens
Referenced from: /Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/clang/e1.37.22_64bit/llvm-ar
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: _futimens
Referenced from: /Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/clang/e1.37.22_64bit/llvm-ar
Expected in: /usr/lib/libSystem.B.dylib
0 llvm-ar 0x0000000109191d88 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 40
1 llvm-ar 0x0000000109192336 SignalHandler(int) + 358
2 libsystem_platform.dylib 0x00007fffbeca5b3a _sigtramp + 26
3 libsystem_platform.dylib 0x00000001105d8b4d _sigtramp + 1368600621
4 libsystem_platform.dylib 0x00000001105e3464 _sigtramp + 1368643908
5 libsystem_platform.dylib 0x00000001105be793 _sigtramp + 1368493171
6 libsystem_platform.dylib 0x00000001105be89e _sigtramp + 1368493438
7 libdyld.dylib 0x00007fffbea92282 dyld_stub_binder + 282
8 llvm-ar 0x00000001093c8340 (anonymous namespace)::DarwinX86AsmBackend::getCompactUnwindRegNum(unsigned int) const::CU64BitRegs + 10650
9 llvm-ar 0x0000000109059e6d performOperation(ArchiveOperation, llvm::object::Archive*, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer> >, std::__1::vector<llvm::NewArchiveMember, std::__1::allocator<llvm::NewArchiveMember> >*) + 2013
10 llvm-ar 0x00000001090590a2 performOperation(ArchiveOperation, std::__1::vector<llvm::NewArchiveMember, std::__1::allocator<llvm::NewArchiveMember> >*) + 930
11 llvm-ar 0x0000000109056c99 main + 361
12 libdyld.dylib 0x00007fffbea96235 start + 1
Stack dump:
0. Program arguments: /Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/clang/e1.37.22_64bit/llvm-ar xo /Users/user/.emscripten_cache/asmjs/libcxx_noexcept.a
Traceback (most recent call last):
File "/Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/emcc.py", line 2611, in <module>
run()
File "/Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/emcc.py", line 1443, in run
final = shared.Building.link(linker_inputs, DEFAULT_FINAL, force_archive_contents=force_archive_contents, temp_files=misc_temp_files, just_calculate=just_calculate)
File "/Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/tools/shared.py", line 1772, in link
Building.read_link_inputs(filter(lambda x: not x.startswith('-'), files))
File "/Users/user/Documents/GIT-REPOS/webidl/sample/emsdk-portable/emscripten/1.37.22/tools/shared.py", line 1698, in read_link_inputs
raise Exception('llvm-ar failed on archive ' + archive_names[n] + '!')
Exception: llvm-ar failed on archive /Users/user/.emscripten_cache/asmjs/libcxx_noexcept.a!
make[1]: *** [all] Error 1
/Users/user/haxe/haxelib/webidl/1,0,0/webidl/Generate.hx:389: characters 18-23 : Uncaught exception Command 'make' has exit with error code 2
No stack information available, consider compiling with -D eval-stack
make: *** [libpoint.js] Error 1
MAC:sample user$ make hl
haxe -lib webidl --macro "SampleModule.buildLibCpp()"
cc -o libpoint.hdll -shared -Wall -O3 -I . -I /Users/user/Documents/GIT-REPOS/hashlink/src libpoint.cpp point.cpp -lstdc++ -lhl
libpoint.cpp:36:13: warning: unused function 'finalize_Point' [-Wunused-function]
static void finalize_Point( _ref(Point)* _this ) { free_ref(_this); }
^
1 warning generated.
ld: library not found for -lhl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [libpoint.hdll] Error 1