mirror of
https://github.com/Yonokid/PyTaiko.git
synced 2026-02-04 11:40:13 +01:00
Update Makefile
This commit is contained in:
@@ -14,14 +14,14 @@ define check_static_lib
|
|||||||
$(shell find /usr/lib /usr/local/lib /lib -name "lib$(1).a" 2>/dev/null | head -1)
|
$(shell find /usr/lib /usr/local/lib /lib -name "lib$(1).a" 2>/dev/null | head -1)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# MSYS2/MinGW-w64 with intelligent static linking
|
# MSYS2/MinGW-w64 with complete static linking
|
||||||
ifneq (,$(findstring MINGW,$(UNAME_S)))
|
ifneq (,$(findstring MINGW,$(UNAME_S)))
|
||||||
CC = x86_64-w64-mingw32-gcc
|
CC = x86_64-w64-mingw32-gcc
|
||||||
LIBNAME = libaudio.dll
|
LIBNAME = libaudio.dll
|
||||||
CFLAGS = -Wall -Wextra -O3 -fPIC -std=c99 -I/mingw64/include -m64
|
CFLAGS = -Wall -Wextra -O3 -fPIC -std=c99 -I/mingw64/include -m64
|
||||||
LDFLAGS = -shared -Wl,--export-all-symbols -static-libgcc -static-libstdc++ -L/mingw64/lib -m64
|
LDFLAGS = -shared -Wl,--export-all-symbols -static-libgcc -static-libstdc++ -L/mingw64/lib -m64
|
||||||
|
|
||||||
# Core libraries with full dependency chain
|
# Core libraries with full dependency chain (order is critical!)
|
||||||
CORE_LIBS =
|
CORE_LIBS =
|
||||||
ifneq (,$(wildcard /mingw64/lib/libportaudio.a))
|
ifneq (,$(wildcard /mingw64/lib/libportaudio.a))
|
||||||
CORE_LIBS += /mingw64/lib/libportaudio.a
|
CORE_LIBS += /mingw64/lib/libportaudio.a
|
||||||
@@ -29,11 +29,20 @@ ifneq (,$(findstring MINGW,$(UNAME_S)))
|
|||||||
CORE_LIBS += -lportaudio
|
CORE_LIBS += -lportaudio
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# libsndfile and ALL its dependencies (order matters!)
|
# libsndfile and ALL its dependencies in dependency order
|
||||||
ifneq (,$(wildcard /mingw64/lib/libsndfile.a))
|
ifneq (,$(wildcard /mingw64/lib/libsndfile.a))
|
||||||
CORE_LIBS += /mingw64/lib/libsndfile.a
|
CORE_LIBS += /mingw64/lib/libsndfile.a
|
||||||
|
|
||||||
# libsndfile codec dependencies
|
# Codec libraries (dependencies of libsndfile)
|
||||||
|
ifneq (,$(wildcard /mingw64/lib/libmpg123.a))
|
||||||
|
CORE_LIBS += /mingw64/lib/libmpg123.a
|
||||||
|
endif
|
||||||
|
ifneq (,$(wildcard /mingw64/lib/libmp3lame.a))
|
||||||
|
CORE_LIBS += /mingw64/lib/libmp3lame.a
|
||||||
|
endif
|
||||||
|
ifneq (,$(wildcard /mingw64/lib/libopus.a))
|
||||||
|
CORE_LIBS += /mingw64/lib/libopus.a
|
||||||
|
endif
|
||||||
ifneq (,$(wildcard /mingw64/lib/libFLAC.a))
|
ifneq (,$(wildcard /mingw64/lib/libFLAC.a))
|
||||||
CORE_LIBS += /mingw64/lib/libFLAC.a
|
CORE_LIBS += /mingw64/lib/libFLAC.a
|
||||||
endif
|
endif
|
||||||
@@ -43,21 +52,11 @@ ifneq (,$(findstring MINGW,$(UNAME_S)))
|
|||||||
ifneq (,$(wildcard /mingw64/lib/libogg.a))
|
ifneq (,$(wildcard /mingw64/lib/libogg.a))
|
||||||
CORE_LIBS += /mingw64/lib/libogg.a
|
CORE_LIBS += /mingw64/lib/libogg.a
|
||||||
endif
|
endif
|
||||||
ifneq (,$(wildcard /mingw64/lib/libopus.a))
|
|
||||||
CORE_LIBS += /mingw64/lib/libopus.a
|
|
||||||
endif
|
|
||||||
ifneq (,$(wildcard /mingw64/lib/libmpg123.a))
|
|
||||||
CORE_LIBS += /mingw64/lib/libmpg123.a
|
|
||||||
endif
|
|
||||||
ifneq (,$(wildcard /mingw64/lib/libmp3lame.a))
|
|
||||||
CORE_LIBS += /mingw64/lib/libmp3lame.a
|
|
||||||
endif
|
|
||||||
ifneq (,$(wildcard /mingw64/lib/libspeex.a))
|
ifneq (,$(wildcard /mingw64/lib/libspeex.a))
|
||||||
CORE_LIBS += /mingw64/lib/libspeex.a
|
CORE_LIBS += /mingw64/lib/libspeex.a
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
# Dynamic linking with all dependencies
|
CORE_LIBS += -lsndfile
|
||||||
CORE_LIBS += -lsndfile -lFLAC -lvorbisenc -lvorbisfile -lvorbis -logg -lopus -lmpg123 -lmp3lame -lspeex
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq (,$(wildcard /mingw64/lib/libsamplerate.a))
|
ifneq (,$(wildcard /mingw64/lib/libsamplerate.a))
|
||||||
@@ -66,8 +65,14 @@ ifneq (,$(findstring MINGW,$(UNAME_S)))
|
|||||||
CORE_LIBS += -lsamplerate
|
CORE_LIBS += -lsamplerate
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# System libraries (always dynamic)
|
# Windows system libraries (these provide the missing symbols)
|
||||||
SYSTEM_LIBS = -lwinmm -lole32 -luuid -lksuser -lsetupapi -lws2_32 -ladvapi32
|
SYSTEM_LIBS = -lwinmm -lole32 -luuid -lksuser -lsetupapi -lws2_32 -ladvapi32 -luser32 -lgdi32 -lkernel32
|
||||||
|
|
||||||
|
# Additional Windows libraries for codec dependencies
|
||||||
|
SYSTEM_LIBS += -lshlwapi -lshell32 -lcomdlg32 -lcomctl32 -lrpcrt4
|
||||||
|
|
||||||
|
# Math and C runtime
|
||||||
|
SYSTEM_LIBS += -lm -lmsvcrt
|
||||||
|
|
||||||
LIBS = $(CORE_LIBS) $(SYSTEM_LIBS)
|
LIBS = $(CORE_LIBS) $(SYSTEM_LIBS)
|
||||||
OBJ_EXT = .o
|
OBJ_EXT = .o
|
||||||
|
|||||||
Reference in New Issue
Block a user