Skip to content

Commit db59b20

Browse files
committed
more weirdness
1 parent d35691a commit db59b20

3 files changed

Lines changed: 26 additions & 9 deletions

File tree

dll/win32/msvcrt/msvcrt.spec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -921,6 +921,7 @@
921921
@ stub _setsystime(ptr long)
922922
@ cdecl _sleep(long)
923923
@ varargs _snprintf(ptr long str)
924+
@ varargs -version=0x600+ snprintf(ptr long str)
924925
@ varargs -version=0x600+ _snprintf_c(ptr long str)
925926
@ varargs -version=0x600+ _snprintf_c_l(ptr long str ptr)
926927
@ varargs -version=0x600+ _snprintf_l(ptr long str ptr)

dll/win32/msvcrt/wcs.c

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1234,6 +1234,22 @@ int WINAPIV _snprintf(char *str, size_t len, const char *format, ...)
12341234
return retval;
12351235
}
12361236

1237+
/*********************************************************************
1238+
* snprintf (MSVCRT.@)
1239+
*
1240+
* C99 name imported by modern (GCC-built) modules; mirror _snprintf, like the
1241+
* existing vsnprintf -> _vsnprintf export.
1242+
*/
1243+
int WINAPIV snprintf(char *str, size_t len, const char *format, ...)
1244+
{
1245+
int retval;
1246+
va_list valist;
1247+
va_start(valist, format);
1248+
retval = vsnprintf(str, len, format, valist);
1249+
va_end(valist);
1250+
return retval;
1251+
}
1252+
12371253
/*********************************************************************
12381254
* _snprintf_l (MSVCRT.@)
12391255
*/

sdk/cmake/gcc.cmake

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -361,25 +361,25 @@ if(SEPARATE_DBG)
361361
"${CMAKE_STRIP} --only-keep-debug <TARGET> -o ${REACTOS_BINARY_DIR}/symbols/${SYMBOL_FILE}"
362362
${strip_debug})
363363
set(CMAKE_C_CREATE_SHARED_LIBRARY
364-
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
364+
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
365365
"${CMAKE_STRIP} --only-keep-debug <TARGET> -o ${REACTOS_BINARY_DIR}/symbols/${SYMBOL_FILE}"
366366
${strip_debug})
367367
set(CMAKE_CXX_CREATE_SHARED_LIBRARY
368-
"<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
368+
"<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
369369
"${CMAKE_STRIP} --only-keep-debug <TARGET> -o ${REACTOS_BINARY_DIR}/symbols/${SYMBOL_FILE}"
370370
${strip_debug})
371371
set(CMAKE_RC_CREATE_SHARED_LIBRARY
372-
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
372+
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
373373
"${CMAKE_STRIP} --only-keep-debug <TARGET> -o ${REACTOS_BINARY_DIR}/symbols/${SYMBOL_FILE}"
374374
${strip_debug})
375375
elseif(NO_ROSSYM)
376376
# Dwarf-based build
377377
message(STATUS "Generating a dwarf-based build (no rsym)")
378378
set(CMAKE_C_LINK_EXECUTABLE "<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
379379
set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_CXX_FLAGS} <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
380-
set(CMAKE_C_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
381-
set(CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_CXX_FLAGS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
382-
set(CMAKE_RC_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
380+
set(CMAKE_C_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
381+
set(CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_CXX_FLAGS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
382+
set(CMAKE_RC_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
383383
else()
384384
# Normal rsym build
385385
get_target_property(RSYM native-rsym IMPORTED_LOCATION)
@@ -391,13 +391,13 @@ else()
391391
"<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_CXX_FLAGS} <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
392392
"${RSYM} -s ${REACTOS_SOURCE_DIR} <TARGET> <TARGET>")
393393
set(CMAKE_C_CREATE_SHARED_LIBRARY
394-
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
394+
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
395395
"${RSYM} -s ${REACTOS_SOURCE_DIR} <TARGET> <TARGET>")
396396
set(CMAKE_CXX_CREATE_SHARED_LIBRARY
397-
"<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_CXX_FLAGS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
397+
"<CMAKE_CXX_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_CXX_FLAGS} <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group"
398398
"${RSYM} -s ${REACTOS_SOURCE_DIR} <TARGET> <TARGET>")
399399
set(CMAKE_RC_CREATE_SHARED_LIBRARY
400-
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
400+
"<CMAKE_C_COMPILER> -Wl,--start-group -Wl,--allow-multiple-definition ${CMAKE_C_FLAGS} <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> -shared <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -Wl,--end-group")
401401
endif()
402402

403403
set(CMAKE_C_CREATE_SHARED_MODULE ${CMAKE_C_CREATE_SHARED_LIBRARY})

0 commit comments

Comments
 (0)