mirror of
https://github.com/ioquake/ioq3.git
synced 2024-11-10 07:11:46 +00:00
Make client for Windows x86_64 use OpenAL64.dll by default
ioquake3.x86_64.exe can't load x86 OpenAL32.dll. Using separate library names allows shipping OpenAL for both architectures. Though since the dll name is saved in the config file, using both clients on the same computer will cause one client arch to always try to load the wrong OpenAL dll and then fallback to the correct default OpenAL dll. I guess it could be fixed by using separate cvar names for s_alDriver.
This commit is contained in:
parent
8192f66b39
commit
c2ce1c2f51
2 changed files with 11 additions and 2 deletions
|
@ -2206,7 +2206,9 @@ static ALCdevice *alCaptureDevice;
|
|||
static cvar_t *s_alCapture;
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
#if defined(_WIN64)
|
||||
#define ALDRIVER_DEFAULT "OpenAL64.dll"
|
||||
#elif defined(_WIN32)
|
||||
#define ALDRIVER_DEFAULT "OpenAL32.dll"
|
||||
#elif defined(__APPLE__)
|
||||
#define ALDRIVER_DEFAULT "/System/Library/Frameworks/OpenAL.framework/OpenAL"
|
||||
|
|
|
@ -38,6 +38,13 @@ ifndef SDLDLL
|
|||
SDLDLL=SDL2.dll
|
||||
endif
|
||||
endif
|
||||
ifndef OPENALDLL
|
||||
ifeq ($(ARCH),x86_64)
|
||||
OPENALDLL=OpenAL64.dll
|
||||
else
|
||||
OPENALDLL=OpenAL32.dll
|
||||
endif
|
||||
endif
|
||||
|
||||
DEFINES=
|
||||
ifeq ($(USE_RENDERER_DLOPEN),1)
|
||||
|
@ -63,7 +70,7 @@ endif
|
|||
all: ioquake3-$(VERSION)-$(RELEASE).$(ARCH).exe
|
||||
|
||||
ioquake3.$(ARCH).nsi: ioquake3.nsi.in
|
||||
sed 's/XXXVERSIONXXX/$(VERSION)/;s/XXXRELEASEXXX/$(RELEASE)/;s/mingw32/$(PLATFORM)/g;s/x86/$(ARCH)/g;s/SDL2.dll/$(SDLDLL)/g' < $< > $@
|
||||
sed 's/XXXVERSIONXXX/$(VERSION)/;s/XXXRELEASEXXX/$(RELEASE)/;s/mingw32/$(PLATFORM)/g;s/x86/$(ARCH)/g;s/SDL2.dll/$(SDLDLL)/g;s/OpenAL32.dll/$(OPENALDLL)/g' < $< > $@
|
||||
|
||||
ioquake3-$(VERSION)-$(RELEASE).$(ARCH).exe: ioquake3.$(ARCH).nsi
|
||||
makensis $(DEFINES) ioquake3.$(ARCH).nsi
|
||||
|
|
Loading…
Reference in a new issue