diff --git a/Makefile.in b/Makefile.in index 07b69afc..32f89af3 100644 --- a/Makefile.in +++ b/Makefile.in @@ -83,6 +83,7 @@ J = $(patsubst -j%,%,$(filter -j%,$(MAKEFLAGS))) include $(SRC)/make/utility.mk include $(SRC)/make/rules-source.mk include $(SRC)/make/rules-common.mk +include $(SRC)/make/rules-makedep.mk include $(SRC)/make/rules-meson.mk include $(SRC)/make/rules-cmake.mk include $(SRC)/make/rules-autoconf.mk @@ -305,24 +306,13 @@ $(eval $(call rules-cmake,glslang,64)) ## lsteamclient ## -LSTEAMCLIENT_CFLAGS = -Wno-attributes -LSTEAMCLIENT_CXXFLAGS = -Wno-attributes -LSTEAMCLIENT_LDFLAGS = -static-libgcc -static-libstdc++ -ldl - -LSTEAMCLIENT_WINEMAKER_ARGS = \ - -DSTEAM_API_EXPORTS \ - -Dprivate=public \ - -Dprotected=public - LSTEAMCLIENT_DEPENDS = wine $(eval $(call rules-source,lsteamclient,$(SRCDIR)/lsteamclient)) -$(eval $(call rules-winemaker,lsteamclient,32,lsteamclient.dll)) -$(eval $(call rules-winemaker,lsteamclient,64,lsteamclient.dll)) +$(eval $(call rules-makedep,lsteamclient,32)) +$(eval $(call rules-makedep,lsteamclient,64)) -## - ## ## openxr ## Note 32-bit is not supported by SteamVR, so we don't build it. diff --git a/lsteamclient/Makefile.in b/lsteamclient/Makefile.in new file mode 100644 index 00000000..2a30b94b --- /dev/null +++ b/lsteamclient/Makefile.in @@ -0,0 +1,320 @@ +MODULE = lsteamclient.dll +IMPORTS = user32 + +EXTRADLLFLAGS = -mcygwin -static-libgcc -static-libstdc++ -ldl +EXTRADEFS = -DWINE_NO_LONG_TYPES -DSTEAM_API_EXPORTS -Dprivate=public -Dprotected=public + +C_SRCS = \ + steamclient_main.c \ + steamclient_wrappers.c \ + winISteamAppList.c \ + winISteamApps.c \ + winISteamAppTicket.c \ + winISteamClient.c \ + winISteamController.c \ + winISteamFriends.c \ + winISteamGameCoordinator.c \ + winISteamGameSearch.c \ + winISteamGameServer.c \ + winISteamGameServerStats.c \ + winISteamGameStats.c \ + winISteamHTMLSurface.c \ + winISteamHTTP.c \ + winISteamInput.c \ + winISteamInventory.c \ + winISteamMasterServerUpdater.c \ + winISteamMatchmaking.c \ + winISteamMatchmakingServers.c \ + winISteamMusic.c \ + winISteamMusicRemote.c \ + winISteamNetworking.c \ + winISteamNetworkingFakeUDPPort.c \ + winISteamNetworkingMessages.c \ + winISteamNetworkingSockets.c \ + winISteamNetworkingSocketsSerialized.c \ + winISteamNetworkingUtils.c \ + winISteamParentalSettings.c \ + winISteamParties.c \ + winISteamRemotePlay.c \ + winISteamRemoteStorage.c \ + winISteamScreenshots.c \ + winISteamUGC.c \ + winISteamUnifiedMessages.c \ + winISteamUser.c \ + winISteamUserStats.c \ + winISteamUtils.c \ + winISteamVideo.c \ + +CXX_SRCS = \ + cppISteamAppList_STEAMAPPLIST_INTERFACE_VERSION001.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION001.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION002.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION003.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION004.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION005.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION006.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION007.cpp \ + cppISteamApps_STEAMAPPS_INTERFACE_VERSION008.cpp \ + cppISteamAppTicket_STEAMAPPTICKET_INTERFACE_VERSION001.cpp \ + cppISteamClient_SteamClient006.cpp \ + cppISteamClient_SteamClient007.cpp \ + cppISteamClient_SteamClient008.cpp \ + cppISteamClient_SteamClient009.cpp \ + cppISteamClient_SteamClient010.cpp \ + cppISteamClient_SteamClient011.cpp \ + cppISteamClient_SteamClient012.cpp \ + cppISteamClient_SteamClient013.cpp \ + cppISteamClient_SteamClient014.cpp \ + cppISteamClient_SteamClient015.cpp \ + cppISteamClient_SteamClient016.cpp \ + cppISteamClient_SteamClient017.cpp \ + cppISteamClient_SteamClient018.cpp \ + cppISteamClient_SteamClient019.cpp \ + cppISteamClient_SteamClient020.cpp \ + cppISteamController_SteamController003.cpp \ + cppISteamController_SteamController004.cpp \ + cppISteamController_SteamController005.cpp \ + cppISteamController_SteamController006.cpp \ + cppISteamController_SteamController007.cpp \ + cppISteamController_SteamController008.cpp \ + cppISteamController_STEAMCONTROLLER_INTERFACE_VERSION.cpp \ + cppISteamFriends_SteamFriends001.cpp \ + cppISteamFriends_SteamFriends002.cpp \ + cppISteamFriends_SteamFriends003.cpp \ + cppISteamFriends_SteamFriends004.cpp \ + cppISteamFriends_SteamFriends005.cpp \ + cppISteamFriends_SteamFriends006.cpp \ + cppISteamFriends_SteamFriends007.cpp \ + cppISteamFriends_SteamFriends008.cpp \ + cppISteamFriends_SteamFriends009.cpp \ + cppISteamFriends_SteamFriends010.cpp \ + cppISteamFriends_SteamFriends011.cpp \ + cppISteamFriends_SteamFriends012.cpp \ + cppISteamFriends_SteamFriends013.cpp \ + cppISteamFriends_SteamFriends014.cpp \ + cppISteamFriends_SteamFriends015.cpp \ + cppISteamFriends_SteamFriends017.cpp \ + cppISteamGameCoordinator_SteamGameCoordinator001.cpp \ + cppISteamGameSearch_SteamMatchGameSearch001.cpp \ + cppISteamGameServer_SteamGameServer002.cpp \ + cppISteamGameServer_SteamGameServer003.cpp \ + cppISteamGameServer_SteamGameServer004.cpp \ + cppISteamGameServer_SteamGameServer005.cpp \ + cppISteamGameServer_SteamGameServer008.cpp \ + cppISteamGameServer_SteamGameServer009.cpp \ + cppISteamGameServer_SteamGameServer010.cpp \ + cppISteamGameServer_SteamGameServer011.cpp \ + cppISteamGameServer_SteamGameServer012.cpp \ + cppISteamGameServer_SteamGameServer013.cpp \ + cppISteamGameServer_SteamGameServer014.cpp \ + cppISteamGameServer_SteamGameServer015.cpp \ + cppISteamGameServerStats_SteamGameServerStats001.cpp \ + cppISteamGameStats_SteamGameStats001.cpp \ + cppISteamHTMLSurface_STEAMHTMLSURFACE_INTERFACE_VERSION_001.cpp \ + cppISteamHTMLSurface_STEAMHTMLSURFACE_INTERFACE_VERSION_002.cpp \ + cppISteamHTMLSurface_STEAMHTMLSURFACE_INTERFACE_VERSION_003.cpp \ + cppISteamHTMLSurface_STEAMHTMLSURFACE_INTERFACE_VERSION_004.cpp \ + cppISteamHTMLSurface_STEAMHTMLSURFACE_INTERFACE_VERSION_005.cpp \ + cppISteamHTTP_STEAMHTTP_INTERFACE_VERSION001.cpp \ + cppISteamHTTP_STEAMHTTP_INTERFACE_VERSION002.cpp \ + cppISteamHTTP_STEAMHTTP_INTERFACE_VERSION003.cpp \ + cppISteamInput_SteamInput001.cpp \ + cppISteamInput_SteamInput002.cpp \ + cppISteamInput_SteamInput005.cpp \ + cppISteamInput_SteamInput006.cpp \ + cppISteamInventory_STEAMINVENTORY_INTERFACE_V001.cpp \ + cppISteamInventory_STEAMINVENTORY_INTERFACE_V002.cpp \ + cppISteamInventory_STEAMINVENTORY_INTERFACE_V003.cpp \ + cppISteamMasterServerUpdater_SteamMasterServerUpdater001.cpp \ + cppISteamMatchmaking_SteamMatchMaking001.cpp \ + cppISteamMatchmaking_SteamMatchMaking002.cpp \ + cppISteamMatchmaking_SteamMatchMaking003.cpp \ + cppISteamMatchmaking_SteamMatchMaking004.cpp \ + cppISteamMatchmaking_SteamMatchMaking005.cpp \ + cppISteamMatchmaking_SteamMatchMaking006.cpp \ + cppISteamMatchmaking_SteamMatchMaking007.cpp \ + cppISteamMatchmaking_SteamMatchMaking008.cpp \ + cppISteamMatchmaking_SteamMatchMaking009.cpp \ + cppISteamMatchmakingServers_SteamMatchMakingServers001.cpp \ + cppISteamMatchmakingServers_SteamMatchMakingServers002.cpp \ + cppISteamMusic_STEAMMUSIC_INTERFACE_VERSION001.cpp \ + cppISteamMusicRemote_STEAMMUSICREMOTE_INTERFACE_VERSION001.cpp \ + cppISteamNetworking_SteamNetworking001.cpp \ + cppISteamNetworking_SteamNetworking002.cpp \ + cppISteamNetworking_SteamNetworking003.cpp \ + cppISteamNetworking_SteamNetworking004.cpp \ + cppISteamNetworking_SteamNetworking005.cpp \ + cppISteamNetworking_SteamNetworking006.cpp \ + cppISteamNetworkingFakeUDPPort_SteamNetworkingFakeUDPPort001.cpp \ + cppISteamNetworkingMessages_SteamNetworkingMessages002.cpp \ + cppISteamNetworkingSockets_SteamNetworkingSockets002.cpp \ + cppISteamNetworkingSockets_SteamNetworkingSockets004.cpp \ + cppISteamNetworkingSockets_SteamNetworkingSockets006.cpp \ + cppISteamNetworkingSockets_SteamNetworkingSockets008.cpp \ + cppISteamNetworkingSockets_SteamNetworkingSockets009.cpp \ + cppISteamNetworkingSockets_SteamNetworkingSockets012.cpp \ + cppISteamNetworkingSocketsSerialized_SteamNetworkingSocketsSerialized002.cpp \ + cppISteamNetworkingSocketsSerialized_SteamNetworkingSocketsSerialized003.cpp \ + cppISteamNetworkingUtils_SteamNetworkingUtils001.cpp \ + cppISteamNetworkingUtils_SteamNetworkingUtils002.cpp \ + cppISteamNetworkingUtils_SteamNetworkingUtils003.cpp \ + cppISteamNetworkingUtils_SteamNetworkingUtils004.cpp \ + cppISteamParentalSettings_STEAMPARENTALSETTINGS_INTERFACE_VERSION001.cpp \ + cppISteamParties_SteamParties002.cpp \ + cppISteamRemotePlay_STEAMREMOTEPLAY_INTERFACE_VERSION001.cpp \ + cppISteamRemotePlay_STEAMREMOTEPLAY_INTERFACE_VERSION002.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION001.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION002.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION003.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION004.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION005.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION006.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION007.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION008.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION009.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION010.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION011.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION012.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION013.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014.cpp \ + cppISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION016.cpp \ + cppISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION001.cpp \ + cppISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION002.cpp \ + cppISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION001.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION002.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION003.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION004.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION005.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION006.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION007.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION008.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION009.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION010.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION012.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION013.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION014.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION015.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION016.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION017.cpp \ + cppISteamUGC_STEAMUGC_INTERFACE_VERSION018.cpp \ + cppISteamUnifiedMessages_STEAMUNIFIEDMESSAGES_INTERFACE_VERSION001.cpp \ + cppISteamUser_SteamUser004.cpp \ + cppISteamUser_SteamUser005.cpp \ + cppISteamUser_SteamUser006.cpp \ + cppISteamUser_SteamUser007.cpp \ + cppISteamUser_SteamUser008.cpp \ + cppISteamUser_SteamUser009.cpp \ + cppISteamUser_SteamUser010.cpp \ + cppISteamUser_SteamUser011.cpp \ + cppISteamUser_SteamUser012.cpp \ + cppISteamUser_SteamUser013.cpp \ + cppISteamUser_SteamUser014.cpp \ + cppISteamUser_SteamUser015.cpp \ + cppISteamUser_SteamUser016.cpp \ + cppISteamUser_SteamUser017.cpp \ + cppISteamUser_SteamUser018.cpp \ + cppISteamUser_SteamUser019.cpp \ + cppISteamUser_SteamUser020.cpp \ + cppISteamUser_SteamUser021.cpp \ + cppISteamUser_SteamUser022.cpp \ + cppISteamUser_SteamUser023.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION001.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION002.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION003.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION004.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION005.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION006.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION007.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION008.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION009.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION010.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION011.cpp \ + cppISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION012.cpp \ + cppISteamUtils_SteamUtils002.cpp \ + cppISteamUtils_SteamUtils004.cpp \ + cppISteamUtils_SteamUtils005.cpp \ + cppISteamUtils_SteamUtils006.cpp \ + cppISteamUtils_SteamUtils007.cpp \ + cppISteamUtils_SteamUtils008.cpp \ + cppISteamUtils_SteamUtils009.cpp \ + cppISteamUtils_SteamUtils010.cpp \ + cppISteamVideo_STEAMVIDEO_INTERFACE_V001.cpp \ + cppISteamVideo_STEAMVIDEO_INTERFACE_V002.cpp \ + steamclient_manual_099y.cpp \ + steamclient_manual_141.cpp \ + steamclient_manual_142.cpp \ + steamclient_manual_144.cpp \ + steamclient_manual_146.cpp \ + steamclient_manual_147.cpp \ + steamclient_manual_148a.cpp \ + steamclient_manual_150.cpp \ + steamclient_manual_151.cpp \ + steamclient_manual_152.cpp \ + steamclient_manual_153a.cpp \ + steamclient_manual_common.cpp \ + struct_converters_111x.cpp \ + struct_converters_112.cpp \ + struct_converters_112x.cpp \ + struct_converters_113.cpp \ + struct_converters_114.cpp \ + struct_converters_115.cpp \ + struct_converters_116.cpp \ + struct_converters_116x.cpp \ + struct_converters_117.cpp \ + struct_converters_118.cpp \ + struct_converters_119.cpp \ + struct_converters_119x.cpp \ + struct_converters_120.cpp \ + struct_converters_121.cpp \ + struct_converters_121x.cpp \ + struct_converters_122.cpp \ + struct_converters_123.cpp \ + struct_converters_123a.cpp \ + struct_converters_124.cpp \ + struct_converters_125.cpp \ + struct_converters_126.cpp \ + struct_converters_126a.cpp \ + struct_converters_127.cpp \ + struct_converters_128.cpp \ + struct_converters_128x.cpp \ + struct_converters_129.cpp \ + struct_converters_129a.cpp \ + struct_converters_130.cpp \ + struct_converters_130x.cpp \ + struct_converters_131.cpp \ + struct_converters_132.cpp \ + struct_converters_132x.cpp \ + struct_converters_133.cpp \ + struct_converters_133a.cpp \ + struct_converters_133b.cpp \ + struct_converters_133x.cpp \ + struct_converters_134.cpp \ + struct_converters_135.cpp \ + struct_converters_135a.cpp \ + struct_converters_136.cpp \ + struct_converters_137.cpp \ + struct_converters_138.cpp \ + struct_converters_138a.cpp \ + struct_converters_139.cpp \ + struct_converters_140.cpp \ + struct_converters_141.cpp \ + struct_converters_142.cpp \ + struct_converters_143.cpp \ + struct_converters_143x.cpp \ + struct_converters_143y.cpp \ + struct_converters_144.cpp \ + struct_converters_145.cpp \ + struct_converters_146.cpp \ + struct_converters_147.cpp \ + struct_converters_148a.cpp \ + struct_converters_149.cpp \ + struct_converters_150.cpp \ + struct_converters_151.cpp \ + struct_converters_152.cpp \ + struct_converters_153a.cpp \ + struct_converters_154.cpp \ + struct_converters_155.cpp \ + struct_converters_156.cpp \ + struct_converters_157.cpp \ + struct_converters_158.cpp \ diff --git a/lsteamclient/steamclient_main.c b/lsteamclient/steamclient_main.c index 026cad45..3f2ba4ec 100644 --- a/lsteamclient/steamclient_main.c +++ b/lsteamclient/steamclient_main.c @@ -48,12 +48,13 @@ static void * (WINAPI *p_NtCurrentTeb)(void); static void init_ntdll_so_funcs(void) { + static const WCHAR ntdllW[] = {'n','t','d','l','l','.','d','l','l',0}; Dl_info info; UINT64 unix_funcs; unsigned int status; void *ntdll; - status = NtQueryVirtualMemory(GetCurrentProcess(), GetModuleHandleW(L"ntdll.dll"), (MEMORY_INFORMATION_CLASS)1000 /*MemoryWineUnixFuncs*/, + status = NtQueryVirtualMemory(GetCurrentProcess(), GetModuleHandleW(ntdllW), (MEMORY_INFORMATION_CLASS)1000 /*MemoryWineUnixFuncs*/, &unix_funcs, sizeof(unix_funcs), NULL); if (status) { @@ -253,7 +254,7 @@ bool steamclient_dos_path_to_unix_path(const char *src, char *dst, int is_url) return 0; } - strncpy(dst, unix_path, PATH_MAX); + lstrcpynA(dst, unix_path, PATH_MAX); HeapFree(GetProcessHeap(), 0, unix_path); }else{ @@ -380,11 +381,12 @@ static void *get_mem_from_steamclient_dll(size_t size, unsigned int version, voi if (!alloc_base) { + static const WCHAR steamclientW[] = {'s','t','e','a','m','c','l','i','e','n','t','.','d','l','l',0}; const IMAGE_SECTION_HEADER *sec; const IMAGE_NT_HEADERS *nt; HMODULE mod; - if (!(mod = GetModuleHandleW(L"steamclient.dll"))) + if (!(mod = GetModuleHandleW(steamclientW))) { /* That is steamclient64.dll for x64 but no known use cases on x64.*/ WARN("Module not found, err %u.\n", GetLastError()); @@ -847,7 +849,7 @@ static int load_steamclient(void) snprintf(path, PATH_MAX, "%s/.steam/sdk32/steamclient.so", getenv("HOME")); #endif if (realpath(path, resolved_path)){ - strncpy(path, resolved_path, PATH_MAX); + lstrcpynA(path, resolved_path, PATH_MAX); path[PATH_MAX - 1] = 0; } #endif diff --git a/lsteamclient/steamclient_manual_099y.cpp b/lsteamclient/steamclient_manual_099y.cpp index 153e3b2b..4275c266 100644 --- a/lsteamclient/steamclient_manual_099y.cpp +++ b/lsteamclient/steamclient_manual_099y.cpp @@ -11,8 +11,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_099y/steam_api.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" #define SDK_VERSION 992 diff --git a/lsteamclient/steamclient_manual_141.cpp b/lsteamclient/steamclient_manual_141.cpp index 91fbe8d1..e7290c6c 100644 --- a/lsteamclient/steamclient_manual_141.cpp +++ b/lsteamclient/steamclient_manual_141.cpp @@ -11,8 +11,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_141/steam_api.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" #define SDK_VERSION 1410 diff --git a/lsteamclient/steamclient_manual_142.cpp b/lsteamclient/steamclient_manual_142.cpp index 0488f2c5..bc6a971a 100644 --- a/lsteamclient/steamclient_manual_142.cpp +++ b/lsteamclient/steamclient_manual_142.cpp @@ -11,8 +11,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_142/steam_api.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" #define SDK_VERSION 1420 diff --git a/lsteamclient/steamclient_manual_144.cpp b/lsteamclient/steamclient_manual_144.cpp index b06cc2fa..1fd5ee03 100644 --- a/lsteamclient/steamclient_manual_144.cpp +++ b/lsteamclient/steamclient_manual_144.cpp @@ -11,10 +11,13 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_144/steam_api.h" #include "steamworks_sdk_144/isteamnetworkingsockets.h" #include "steamworks_sdk_144/steamnetworkingtypes.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_146.cpp b/lsteamclient/steamclient_manual_146.cpp index 466498d7..08ac2f1e 100644 --- a/lsteamclient/steamclient_manual_146.cpp +++ b/lsteamclient/steamclient_manual_146.cpp @@ -11,11 +11,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_146/steam_api.h" #include "steamworks_sdk_146/isteamnetworkingsockets.h" #include "steamworks_sdk_146/isteamnetworkingutils.h" #include "steamworks_sdk_146/steamnetworkingtypes.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_147.cpp b/lsteamclient/steamclient_manual_147.cpp index 91c3dd00..3304f29c 100644 --- a/lsteamclient/steamclient_manual_147.cpp +++ b/lsteamclient/steamclient_manual_147.cpp @@ -11,11 +11,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_147/steam_api.h" #include "steamworks_sdk_147/isteamnetworkingsockets.h" #include "steamworks_sdk_147/isteamnetworkingutils.h" #include "steamworks_sdk_147/steamnetworkingtypes.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_148a.cpp b/lsteamclient/steamclient_manual_148a.cpp index fca410a5..a1752301 100644 --- a/lsteamclient/steamclient_manual_148a.cpp +++ b/lsteamclient/steamclient_manual_148a.cpp @@ -11,11 +11,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_148a/steam_api.h" #include "steamworks_sdk_148a/isteamnetworkingsockets.h" #include "steamworks_sdk_148a/isteamnetworkingutils.h" #include "steamworks_sdk_148a/steamnetworkingtypes.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_150.cpp b/lsteamclient/steamclient_manual_150.cpp index f3b83477..17535528 100644 --- a/lsteamclient/steamclient_manual_150.cpp +++ b/lsteamclient/steamclient_manual_150.cpp @@ -11,11 +11,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_150/steam_api.h" #include "steamworks_sdk_150/isteamnetworkingsockets.h" #include "steamworks_sdk_150/isteamnetworkingutils.h" #include "steamworks_sdk_150/steamnetworkingtypes.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_151.cpp b/lsteamclient/steamclient_manual_151.cpp index ccdb82f6..788eba54 100644 --- a/lsteamclient/steamclient_manual_151.cpp +++ b/lsteamclient/steamclient_manual_151.cpp @@ -11,8 +11,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_151/steam_api.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_152.cpp b/lsteamclient/steamclient_manual_152.cpp index 7e475112..d99c315b 100644 --- a/lsteamclient/steamclient_manual_152.cpp +++ b/lsteamclient/steamclient_manual_152.cpp @@ -11,9 +11,12 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_152/steam_api.h" #include "steamworks_sdk_152/isteaminput.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" #include diff --git a/lsteamclient/steamclient_manual_153a.cpp b/lsteamclient/steamclient_manual_153a.cpp index de8aa5e3..7db7c94e 100644 --- a/lsteamclient/steamclient_manual_153a.cpp +++ b/lsteamclient/steamclient_manual_153a.cpp @@ -11,12 +11,15 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_153a/steam_api.h" #include "steamworks_sdk_153a/isteamnetworkingsockets.h" #include "steamworks_sdk_153a/isteamnetworkingutils.h" #include "steamworks_sdk_153a/steamnetworkingtypes.h" #include "steamworks_sdk_153a/steamnetworkingfakeip.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/lsteamclient/steamclient_manual_common.cpp b/lsteamclient/steamclient_manual_common.cpp index fddcb09d..c7d5f2fc 100644 --- a/lsteamclient/steamclient_manual_common.cpp +++ b/lsteamclient/steamclient_manual_common.cpp @@ -12,10 +12,13 @@ WINE_DEFAULT_DEBUG_CHANNEL(steamclient); #include "steam_defs.h" #pragma push_macro("__cdecl") #undef __cdecl +#pragma push_macro("strncpy") +#undef strncpy #include "steamworks_sdk_153a/steam_api.h" #include "steamworks_sdk_153a/steamnetworkingtypes.h" #pragma pop_macro("__cdecl") +#pragma pop_macro("strncpy") #include "steamclient_private.h" extern "C" { diff --git a/make/rules-makedep.mk b/make/rules-makedep.mk new file mode 100644 index 00000000..afca1a24 --- /dev/null +++ b/make/rules-makedep.mk @@ -0,0 +1,51 @@ +# parameters: +# $(1): lowercase package name +# $(2): uppercase package name +# $(3): 32/64, build type +# +define create-rules-makedep +$(call create-rules-common,$(1),$(2),$(3)) + +$$(OBJ)/.$(1)-configure$(3): + @echo ":: configuring $(3)bit $(1)..." >&2 + + sed -e '/^all:$$$$/,$$$$c all:' \ + -e '/^SUBDIRS/,/[^\\]$$$$/c SUBDIRS = $$($(2)_SRC)' \ + \ + -e '/^srcdir/a objdir = $$(WINE_OBJ$(3))' \ + -e '/^prefix/c prefix = $$($(2)_DST$(3))' \ + -e '/^libdir/c libdir = $$($(2)_LIBDIR$(3))' \ + -e '/^toolsdir/c toolsdir = $$(WINE_OBJ$(3))' \ + \ + -e '/^CFLAGS/c CFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3))' \ + -e '/^CPPFLAGS/c CPPFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CPPFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3))' \ + -e '/^CXXFLAGS/c CXXFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CXXFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3)) -std=c++17' \ + -e '/^LDFLAGS/c LDFLAGS = $$($(2)_LIBFLAGS$(3)) $$($(2)_LDFLAGS$(3)) $$($(2)_LDFLAGS) $$($(4)LDFLAGS)' \ + \ + -e '/^x86_64_CFLAGS/c x86_64_CFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3))' \ + -e '/^x86_64_CPPFLAGS/c x86_64_CPPFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CPPFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3))' \ + -e '/^x86_64_CXXFLAGS/c x86_64_CXXFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CXXFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3)) -std=c++17' \ + -e '/^x86_64_LDFLAGS/c x86_64_LDFLAGS = $$($(2)_LIBFLAGS$(3)) $$($(2)_LDFLAGS$(3)) $$($(2)_LDFLAGS) $$(CROSSLDFLAGS)' \ + \ + -e '/^i386_CFLAGS/c i386_CFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3))' \ + -e '/^i386_CPPFLAGS/c i386_CPPFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CPPFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3))' \ + -e '/^i386_CXXFLAGS/c i386_CXXFLAGS = $$($(2)_INCFLAGS$(3)) $$($(2)_CXXFLAGS) $$(COMMON_FLAGS) $$(COMMON_FLAGS$(3)) -std=c++17' \ + -e '/^i386_LDFLAGS/c i386_LDFLAGS = $$($(2)_LIBFLAGS$(3)) $$($(2)_LDFLAGS$(3)) $$($(2)_LDFLAGS) $$(CROSSLDFLAGS)' \ + \ + $$(WINE_OBJ$(3))/Makefile > $$($(2)_OBJ$(3))/Makefile + + cd "$$($(2)_OBJ$(3))" && env $$($(2)_ENV$(3)) \ + $$(WINE_OBJ$(3))/tools/makedep + + touch $$@ + +$$(OBJ)/.$(1)-build$(3): + @echo ":: building $(3)bit $(1)..." >&2 + +cd "$$($(2)_OBJ$(3))" && env $$($(2)_ENV$(3)) \ + $$(BEAR) $$(MAKE) + cd "$$($(2)_OBJ$(3))" && env $$($(2)_ENV$(3)) \ + $$(MAKE) install + touch $$@ +endef + +rules-makedep = $(call create-rules-makedep,$(1),$(call toupper,$(1)),$(2))