[pull] master from GaijinEntertainment:master#772
Merged
Conversation
…me fix Ship only the dynamic-linked compiler binary in the install, renamed from daslang_dyn to daslang (OUTPUT_NAME + EXPORT_NAME). The static daslang target is renamed to daslang_static and excluded from install. Add backward-compatible DAS::daslang_dyn alias in DASConfig.cmake.in so existing consumer CMakeLists still work. Propagate C++17 requirement to consumers via target_compile_features (PUBLIC cxx_std_17) in SETUP_LIBDASCRIPT fixes builds of external modules that rely on C++17 features from daScript headers. Fix normalizeFileName on Windows: trim trailing backslash produced by GetFullPathNameA for directory paths (e.g. './' -> 'D:\foo\' became 'D:\foo'). Guard preserves root paths like 'C:\'. This fixes duplicate module scanning in require_dynamic_modules when das_root and project_root compared unequal due to trailing slash mismatch.
The dynamic module descriptor scripts (.das_module) for dasAudio, dasPUGIXML, dasSQLITE, dasStbImage, dasStbTrueType, dasStdDlg, and dasUnitTest still referenced .das_module as the shared library extension, but the CMake build produces .shared_module files. This caused 'missing prerequisite' errors when running tests with the dynamic binary (daslang_dyn), which is now the default 'daslang' binary after the part-3 rename.
dasPEG is a pure-das module with no C++ shared library. It was missing a .das_module descriptor, so the dynamic module resolver could not find peg/peg, peg/meta_ast, etc. This caused 'missing prerequisite peg/peg' errors when loading daslib/spoof. Add .das_module with register_native_path calls for all four peg modules, and add the install rule to CMakeLists.txt.
…T template exports Rename CMake targets so target name = output name: - daslang target now produces daslang binary (dynamic/DLL, the default) - daslang_static target produces daslang_static binary (static) No more OUTPUT_NAME overrides needed. Fix JIT LNK1161 on template-heavy code (e.g. flat_hash_table): - DllName sanitizer now escapes <, >, and , in mangled function names - Template instantiations like TFlatHashTable<int,Foo,hash> previously produced invalid Windows DLL export names Updated: CMakeLists.txt, DASConfig.cmake.in, README.md, RST docs, install README, dasLLVM README, skills docs, tutorial CMakeLists.
Install part-3: rename daslang_dyn to daslang, C++17 propagation, normalizeFileName fix
Install part 4: External modules documentation, track .das_module files
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )