hxcpp
hxcpp copied to clipboard
Lime builds targeting ios, tvos, emscripten, and static_build still depend on removed ndll code
Using the master branch of hxcpp with the develop branch of lime.
I'm getting build errors doing 'lime rebuild windows -static'. It looks like lime's static build path still has dependencies on the removed ndll code. Although it's probably worth the lime project examining whether they're really still needed, the hcxpp commit that removes them breaks my workflow, and I'd suggest rolling it back until the requirements of the lime codebase are brought into sync with hxcpp.
Error: Error while running command cl.exe -Iinclude -Ilib/cairo/include -Ilib/cairo/include/configs/windows/ -DLIME_CAIRO -DHAVE_CONFIG_H -DCAIRO_WIN32_STATIC_BUILD -DCAIRO_HAS_FT_FONT -Ilib/curl/include/ -DLIME_CURL -DCURL_STATICLIB -Ilib/efsw/include/ -DLIME_EFSW -Ilib/freetype/include -DLIME_FREETYPE -Ilib/harfbuzz/src -DLIME_HARFBUZZ -DLIBHL_EXPORTS -Ilib/jpeg/ -DLIME_JPEG -Ilib/lzma/src -DLIME_LZMA -Ilib/ogg/include/ -Ilib/vorbis/include/ -DLIME_OGG -Ilib/mojoal/ -DLIME_OPENAL -DLIME_MOJOAL -DAL_LIBTYPE_STATIC=1 -DLIME_OPENGL -Ilib/png/ -Ilib/zlib/ -DLIME_PNG -Ilib/sdl/include/ -Ilib/sdl/include/configs/windows/ -DHAVE_LIBC -DLIME_SDL -Ilib/tinyfiledialogs/ -DLIME_TINYFILEDIALOGS -Ilib/ogg/include/ -Ilib/vorbis/include/ -DLIME_VORBIS -DLIME_ZLIB -nologo /WX- /fp:precise -DHX_WINDOWS -GR -O2 -FS -Oy- -c -EHs -GS- -arch:SSE2 -IC:/dev/haxetoolkit/haxe/lib/hxcpp/local_clone/include -DSTATIC_LINK -DHXCPP_VISIT_ALLOCS -DHXCPP_API_LEVEL=0 -D_CRT_SECURE_NO_DEPRECATE -D_ALLOW_MSC_VER_MISMATCH -D_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH -wd4996 -MT C:/dev/haxetoolkit/haxe/lib/hxcpp/local_clone/project/libs/zlib/ZLib.cpp -FoC:/dev/haxetoolkit/haxe/lib/lime/local_clone/project/obj/msvc19-statxp/04404b9c_ZLib.obj
ZLib.cpp c1xx: fatal error C1083: Cannot open source file: 'C:/dev/haxetoolkit/haxe/lib/hxcpp/local_clone/project/libs/zlib/ZLib.cpp': No such file or directory
This line in lime's Build.xml refers to the removed zlib.cpp in hxcpp. It's likely that the line is entirely unneeded, though I'm only able to confirm it for the Windows static target, not the other build targets that also attempt to compile it.
https://github.com/haxelime/lime/blob/develop/project/Build.xml#L284
Since this doesn't only affect Windows static builds, I'm editing the title of this issue to more correctly describe the problem.
Does it work if you simply remove that line from the build.xml?
Removing that line does work when building lime targeting Windows with static_build. I can't confirm it works in any other affected configuration (ios, tvos, emscripten, or static_build targeting something other than windows)
These files have not been needed for a few years, and the code inside will not be run by any code compiled recently. It should be a matter or removing any reference to these from your build system and enjoy the smaller download and faster compile. No need to distribute any of the ndlls in a dynamic build either - these have also not been needed for a year or two.