mirror of
https://github.com/ValveSoftware/Proton.git
synced 2025-01-27 05:58:16 +03:00
lsteamclient: Fix building as a winemaker project
This commit is contained in:
parent
88f3462bc1
commit
0b2c856af7
@ -2,34 +2,74 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
RUNTIME_PATH="$PWD/../../runtime/steam-runtime-both/"
|
|
||||||
|
|
||||||
#./wine/ <-- wine source
|
#./wine/ <-- wine source
|
||||||
#./build/ <-- built files
|
#./build/ <-- built files
|
||||||
#./dist/ <-- proton build, ready to distribute
|
#./dist/ <-- proton build, ready to distribute
|
||||||
|
|
||||||
mkdir -p dist/ build/wine.win32 build/dist.win32 build/wine.win64
|
mkdir -p dist/ build/wine.win32 build/dist.win32 build/wine.win64
|
||||||
|
|
||||||
DST_DIR="$PWD/dist"
|
TOP="$PWD"
|
||||||
|
RUNTIME_PATH="$TOP/../../runtime/steam-runtime-both/"
|
||||||
|
DST_DIR="$TOP/dist"
|
||||||
|
TOOLS_DIR64="$TOP/build/tools.win64"
|
||||||
|
TOOLS_DIR32="$TOP/build/tools.win32"
|
||||||
|
|
||||||
cp -a toolmanifest.vdf dist/
|
cp -a toolmanifest.vdf dist/
|
||||||
|
|
||||||
cd build/wine.win64
|
#build wine64
|
||||||
CC="ccache gcc" "$RUNTIME_PATH/shell-amd64.sh" ../../wine/configure --enable-win64 --disable-tests --prefix="$DST_DIR"
|
cd "$TOP"/build/wine.win64
|
||||||
|
CC="ccache gcc" "$RUNTIME_PATH/shell-amd64.sh" "$TOP"/wine/configure --enable-win64 --disable-tests --prefix="$DST_DIR"
|
||||||
"$RUNTIME_PATH/shell-amd64.sh" make
|
"$RUNTIME_PATH/shell-amd64.sh" make
|
||||||
"$RUNTIME_PATH/shell-amd64.sh" make install-lib
|
"$RUNTIME_PATH/shell-amd64.sh" make install-lib
|
||||||
|
"$RUNTIME_PATH/shell-amd64.sh" make prefix="$TOOLS_DIR64" libdir="$TOOLS_DIR64/lib64" dlldir="$TOOLS_DIR64/lib64/wine" install-dev install-lib
|
||||||
|
|
||||||
cd ../wine.win32
|
#build wine32
|
||||||
CC="ccache gcc" "$RUNTIME_PATH/shell-i386.sh" ../../wine/configure --disable-tests --prefix="$PWD/../dist.win32/"
|
cd "$TOP"/build/wine.win32
|
||||||
|
CC="ccache gcc" "$RUNTIME_PATH/shell-i386.sh" "$TOP"/wine/configure --disable-tests --prefix="$TOP/build/dist.win32/"
|
||||||
"$RUNTIME_PATH/shell-i386.sh" make
|
"$RUNTIME_PATH/shell-i386.sh" make
|
||||||
"$RUNTIME_PATH/shell-i386.sh" make install-lib
|
"$RUNTIME_PATH/shell-i386.sh" make install-lib
|
||||||
|
"$RUNTIME_PATH/shell-i386.sh" make prefix="$TOOLS_DIR32" libdir="$TOOLS_DIR32/lib" dlldir="$TOOLS_DIR32/lib/wine" install-dev install-lib
|
||||||
|
|
||||||
#install 32-bit stuff manually, see
|
#install 32-bit stuff manually, see
|
||||||
# https://wiki.winehq.org/Packaging#WoW64_Workarounds
|
# https://wiki.winehq.org/Packaging#WoW64_Workarounds
|
||||||
cd ../dist.win32/
|
cd "$TOP"/build/dist.win32/
|
||||||
cp -a lib "$DST_DIR"/
|
cp -a lib "$DST_DIR"/
|
||||||
cp -a bin/wine "$DST_DIR"/bin/
|
cp -a bin/wine "$DST_DIR"/bin/
|
||||||
cp -a bin/wine-preloader "$DST_DIR"/bin/
|
cp -a bin/wine-preloader "$DST_DIR"/bin/
|
||||||
cp -a bin/wineserver "$DST_DIR"/bin/wineserver32
|
cp -a bin/wineserver "$DST_DIR"/bin/wineserver32
|
||||||
|
|
||||||
|
#build 64-bit lsteamclient
|
||||||
|
cd "$TOP"
|
||||||
|
rm -rf build/lsteamclient.win64
|
||||||
|
cp -a lsteamclient build/lsteamclient.win64
|
||||||
|
cd "$TOP"/build/lsteamclient.win64/
|
||||||
|
"$RUNTIME_PATH/shell-amd64.sh" "$TOP"/wine/tools/winemaker/winemaker \
|
||||||
|
--nosource-fix --nolower-include --nodlls --nomsvcrt \
|
||||||
|
-DSTEAM_API_EXPORTS \
|
||||||
|
-I"$TOOLS_DIR64"/include/ \
|
||||||
|
-I"$TOOLS_DIR64"/include/wine/ \
|
||||||
|
-I"$TOOLS_DIR64"/include/wine/windows/ \
|
||||||
|
-L"$TOOLS_DIR64"/lib64/ \
|
||||||
|
-L"$TOOLS_DIR64"/lib64/wine/ \
|
||||||
|
--dll .
|
||||||
|
CXXFLAGS=-Wno-attributes PATH="$TOOLS_DIR64/bin:$PATH" "$RUNTIME_PATH/shell-amd64.sh" make
|
||||||
|
cp -a lsteamclient.dll.so "$TOP"/dist/lib64/wine/
|
||||||
|
|
||||||
|
#build 32-bit lsteamclient
|
||||||
|
cd "$TOP"
|
||||||
|
rm -rf build/lsteamclient.win32
|
||||||
|
cp -a lsteamclient build/lsteamclient.win32
|
||||||
|
cd "$TOP"/build/lsteamclient.win32/
|
||||||
|
"$RUNTIME_PATH/shell-i386.sh" "$TOP"/wine/tools/winemaker/winemaker \
|
||||||
|
--nosource-fix --nolower-include --nodlls --nomsvcrt --wine32 \
|
||||||
|
-DSTEAM_API_EXPORTS \
|
||||||
|
-I"$TOOLS_DIR32"/include/ \
|
||||||
|
-I"$TOOLS_DIR32"/include/wine/ \
|
||||||
|
-I"$TOOLS_DIR32"/include/wine/windows/ \
|
||||||
|
-L"$TOOLS_DIR32"/lib/ \
|
||||||
|
-L"$TOOLS_DIR32"/lib/wine/ \
|
||||||
|
--dll .
|
||||||
|
CXXFLAGS=-Wno-attributes PATH="$TOOLS_DIR32/bin:$PATH" "$RUNTIME_PATH/shell-i386.sh" make -j1
|
||||||
|
cp -a lsteamclient.dll.so "$TOP"/dist/lib/wine/
|
||||||
|
|
||||||
echo "Proton ready in dist/"
|
echo "Proton ready in dist/"
|
||||||
|
@ -18,6 +18,12 @@
|
|||||||
|
|
||||||
/* Copied from dlls/msvcrt/cxx.h */
|
/* Copied from dlls/msvcrt/cxx.h */
|
||||||
#undef __thiscall
|
#undef __thiscall
|
||||||
|
|
||||||
|
#define __ASM_NAME(name) name
|
||||||
|
#define __ASM_DEFINE_FUNC(name,suffix,code) asm(".text\n\t.align 4\n\t.globl " #name suffix "\n\t.type " #name suffix ",@function\n" #name suffix ":\n\t.cfi_startproc\n\t" code "\n\t.cfi_endproc\n\t.previous");
|
||||||
|
#define __ASM_GLOBAL_FUNC(name,code) __ASM_DEFINE_FUNC(name,"",code)
|
||||||
|
#define __ASM_STDCALL(args) ""
|
||||||
|
|
||||||
#ifdef __i386__ /* thiscall functions are i386-specific */
|
#ifdef __i386__ /* thiscall functions are i386-specific */
|
||||||
|
|
||||||
#define THISCALL(func) __thiscall_ ## func
|
#define THISCALL(func) __thiscall_ ## func
|
||||||
|
@ -8,3 +8,5 @@ rm cpp*.h
|
|||||||
rm cb*.h
|
rm cb*.h
|
||||||
rm cb*.cpp
|
rm cb*.cpp
|
||||||
rm cb*.dat
|
rm cb*.dat
|
||||||
|
|
||||||
|
./gen_wrapper.py
|
||||||
|
@ -296,8 +296,6 @@ def handle_class(sdkver, classnode):
|
|||||||
cfile = open("%s.c" % winname, "a")
|
cfile = open("%s.c" % winname, "a")
|
||||||
if not file_exists:
|
if not file_exists:
|
||||||
cfile.write("""/* This file is auto-generated, do not edit. */
|
cfile.write("""/* This file is auto-generated, do not edit. */
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -22,8 +22,6 @@ BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, void *reserved)
|
|||||||
|
|
||||||
switch (reason)
|
switch (reason)
|
||||||
{
|
{
|
||||||
case DLL_WINE_PREATTACH:
|
|
||||||
return FALSE; /* prefer native version */
|
|
||||||
case DLL_PROCESS_ATTACH:
|
case DLL_PROCESS_ATTACH:
|
||||||
DisableThreadLibraryCalls(instance);
|
DisableThreadLibraryCalls(instance);
|
||||||
break;
|
break;
|
||||||
|
@ -31,3 +31,7 @@ typedef struct __winX winX;
|
|||||||
void *create_win_interface(const char *name, void *linux_side);
|
void *create_win_interface(const char *name, void *linux_side);
|
||||||
unsigned int steamclient_unix_path_to_dos_path(unsigned int api_result, char *inout, unsigned int inout_bytes);
|
unsigned int steamclient_unix_path_to_dos_path(unsigned int api_result, char *inout, unsigned int inout_bytes);
|
||||||
void *create_LinuxMatchmakingServerListResponse(void *win);
|
void *create_LinuxMatchmakingServerListResponse(void *win);
|
||||||
|
|
||||||
|
#define TRACE WINE_TRACE
|
||||||
|
#define ERR WINE_ERR
|
||||||
|
#define WARN WINE_WARN
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
/* Linux-to-Windows conversions (i.e. callbacks) here. */
|
/* Linux-to-Windows conversions (i.e. callbacks) here. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
/* This file is auto-generated, do not edit. */
|
/* This file is auto-generated, do not edit. */
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
#include "wine/port.h"
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user