diff --git a/CMakeLists.txt b/CMakeLists.txt index 53cfb23..c1a06fa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,8 @@ cmake_minimum_required(VERSION 3.11) project(sj4) +option(SJ4_GLOBAL "Use global variables or not" OFF) + file(GLOB_RECURSE SJ4CORE_SRCS lib/sj4core/**.c) add_library(sj4core STATIC ${SJ4CORE_SRCS}) target_include_directories(sj4core PUBLIC include/sj4common include/sj4core) @@ -20,6 +22,8 @@ file(GLOB_RECURSE SJ4TEST_SRCS src/sj4test/**.c) add_executable(sj4test ${SJ4TEST_SRCS}) target_link_libraries(sj4test PRIVATE sj4core) -#target_compile_definitions(sj4core PUBLIC SJ4_GLOBAL) +if(SJ4_GLOBAL) + target_compile_definitions(sj4core PUBLIC SJ4_GLOBAL) +endif() target_compile_definitions(sj4mkdic PRIVATE UTF8 ENGLISH) diff --git a/README b/README index 9e3a23f..0ae96ed 100644 --- a/README +++ b/README @@ -29,14 +29,21 @@ PC Linux 6.6.87.2-microsoft-standard-WSL2 Windows 11 +* Differences + - Multiple contexts can be created in SJ4. SJ3's behavior of using + global variables can be brought back with -DSJ3_GLOBAL. + - Dictionary input is UTF-8 instead of EUC-JP, but output binary is + still in EUC-JP. This allows SJ4 to use characters like emojis. + - SJ4 is monolithic unlike SJ3, which is C/S. + - SJ4 has Windows support. + * Bug report If some bugs are found, please send bug report(Japanese or English) https://forgejo.nishi.boats/pyrite-dev/sj4 or send me email at nishi@nishi.boats. * Acknowledgements - - I would like to thank to the people who worked on Sj3 originally, + I would like to thank to the people who worked on SJ3 originally, including Sony Corporation. June 20, 2026