mirror of
https://github.com/libretro/RetroArch.git
synced 2024-11-23 07:59:42 +00:00
51d238875e
ever implemented for OpenGL2 driver, lots of code debt, best to instead just keep improving the overlay system instead which is already available for most video drivers
180 lines
3.7 KiB
Makefile
180 lines
3.7 KiB
Makefile
TARGET = retroarch.exe
|
|
|
|
HAVE_SCREENSHOTS = 1
|
|
HAVE_AUDIOMIXER = 1
|
|
HAVE_RWAV = 1
|
|
HAVE_DINPUT = 1
|
|
HAVE_XAUDIO = 1
|
|
HAVE_DSOUND = 1
|
|
HAVE_WASAPI = 1
|
|
HAVE_OPENGL = 1
|
|
HAVE_DYLIB = 1
|
|
HAVE_D3D9 = 1
|
|
HAVE_NETWORKING = 1
|
|
HAVE_IFINFO = 1
|
|
HAVE_NETPLAYDISCOVERY = 1
|
|
HAVE_STDIN_CMD = 1
|
|
HAVE_COMMAND = 1
|
|
HAVE_THREADS = 1
|
|
HAVE_MENU = 1
|
|
HAVE_CONFIGFILE = 1
|
|
HAVE_PATCH = 1
|
|
HAVE_REWIND = 1
|
|
HAVE_CHEATS = 1
|
|
HAVE_RGUI = 1
|
|
HAVE_MATERIALUI = 1
|
|
HAVE_DSP_FILTER = 1
|
|
HAVE_VIDEO_FILTER = 1
|
|
HAVE_7ZIP = 1
|
|
DYNAMIC = 1
|
|
HAVE_CORE_INFO_CACHE = 1
|
|
|
|
HAVE_XINPUT = 1
|
|
HAVE_WINMM = 1
|
|
|
|
HAVE_SDL := 0
|
|
HAVE_SDL2 := 0
|
|
HAVE_RSOUND := 0
|
|
|
|
HAVE_STB_FONT := 1
|
|
HAVE_FREETYPE := 1
|
|
HAVE_FFMPEG := 0
|
|
|
|
HAVE_CG := 1
|
|
HAVE_ZLIB := 1
|
|
HAVE_CC_RESAMPLER := 1
|
|
|
|
ifeq ($(HAVE_CG), 1)
|
|
CG_LIBS := -lcg -lcgGL
|
|
endif
|
|
|
|
ifeq ($(HAVE_FREETYPE), 1)
|
|
FREETYPE_CFLAGS := -DHAVE_FREETYPE -Ifreetype2
|
|
FREETYPE_LIBS := -lfreetype
|
|
endif
|
|
|
|
ifeq ($(HAVE_SDL), 1)
|
|
SDL_LIBS := -lSDL
|
|
SDL_CFLAGS := -ISDL -DHAVE_SDL
|
|
BSD_LOCAL_INC :=
|
|
endif
|
|
|
|
ifeq ($(HAVE_SDL2), 1)
|
|
SDL2_LIBS := -lSDL2
|
|
SDL2_CFLAGS := -ISDL2 -DHAVE_SDL2
|
|
endif
|
|
|
|
ifeq ($(HAVE_D3D8), 1)
|
|
D3D8_LIBS := -ld3d8
|
|
ifeq ($(HAVE_D3DX), 1)
|
|
D3DX8_LIBS := -ld3dx8
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(HAVE_D3D9), 1)
|
|
D3D9_LIBS := -ld3d9
|
|
ifeq ($(HAVE_D3DX), 1)
|
|
D3DX9_LIBS := -ld3dx9
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(HAVE_RSOUND), 1)
|
|
RSOUND_CFLAGS := -DHAVE_RSOUND
|
|
RSOUND_LIBS := -lrsound
|
|
endif
|
|
|
|
ifeq ($(HAVE_FFMPEG), 1)
|
|
AVCODEC_LIBS := -lavcodec
|
|
AVUTIL_LIBS := -lavutil
|
|
SWSCALE_LIBS := -lswscale
|
|
AVFORMAT_LIBS := -lavformat
|
|
SWRESAMPLE_LIBS := -lswresample
|
|
FFMPEG_LIBS := -lws2_32 -lz
|
|
endif
|
|
|
|
OBJDIR := obj-w32
|
|
|
|
OS := Win32
|
|
OBJ :=
|
|
LIBS := -lm
|
|
DEFINES :=
|
|
DEFINES += -I. -Ilibretro-common/include -Ilibretro-common/include/compat/zlib -DRARCH_INTERNAL -DHAVE_SCREENSHOTS -DHAVE_OVERLAY
|
|
LDFLAGS := -L. -static-libgcc
|
|
|
|
include Makefile.common
|
|
|
|
HEADERS = $(wildcard */*/*.h) $(wildcard */*.h) $(wildcard *.h)
|
|
|
|
ifneq ($(HOST_PREFIX),)
|
|
CC = $(HOST_PREFIX)gcc
|
|
CXX = $(HOST_PREFIX)g++
|
|
WINDRES = $(HOST_PREFIX)windres
|
|
else
|
|
CC = gcc
|
|
CXX = g++
|
|
WINDRES = windres
|
|
endif
|
|
|
|
libretro ?= -lretro
|
|
|
|
ifeq ($(DYNAMIC), 1)
|
|
DEFINES += -DHAVE_DYNAMIC
|
|
else
|
|
LIBS += $(libretro)
|
|
endif
|
|
|
|
ifneq ($(V), 1)
|
|
Q := @
|
|
endif
|
|
|
|
ifeq ($(DEBUG), 1)
|
|
CFLAGS += -O0 -g
|
|
CXXFLAGS += -O0 -g
|
|
else
|
|
CFLAGS += -O3 -ffast-math
|
|
CXXFLAGS += -O3 -ffast-math
|
|
endif
|
|
|
|
CFLAGS += $(DEF_FLAGS) -Wall -Wno-unused-result -Wno-unused-variable -I. -Ideps
|
|
CXXFLAGS += -Wall -Wno-unused-result -Wno-unused-variable -I. -Ideps -std=c++98 -D__STDC_CONSTANT_MACROS
|
|
ifeq ($(CXX_BUILD), 1)
|
|
CFLAGS += -std=c++98 -xc++ -D__STDC_CONSTANT_MACROS
|
|
else
|
|
ifneq ($(GNU90_BUILD), 1)
|
|
CFLAGS += -std=gnu99
|
|
endif
|
|
endif
|
|
|
|
RARCH_OBJ := $(addprefix $(OBJDIR)/,$(OBJ))
|
|
|
|
all: $(TARGET)
|
|
|
|
-include $(RARCH_OBJ:.o=.d)
|
|
|
|
$(TARGET): $(RARCH_OBJ)
|
|
@$(if $(Q), $(shell echo echo LD $@),)
|
|
$(Q)$(CXX) -o $@ $(RARCH_OBJ) $(LIBS) $(LDFLAGS) $(LDCXXFLAGS)
|
|
|
|
#those mkdir shenanigans are really ugly, but I can't find any better solution
|
|
$(OBJDIR)/%.o: %.c
|
|
@-mkdir -p $(dir $@) || mkdir $(subst /,\,$(dir $@)) || echo .
|
|
@$(if $(Q), $(shell echo echo CC $<),)
|
|
$(Q)$(CC) $(CFLAGS) $(DEFINES) -MMD -c -o $@ $<
|
|
|
|
$(OBJDIR)/%.o: %.cpp | $(dir $@)
|
|
@-mkdir -p $(dir $@) || mkdir $(subst /,\,$(dir $@)) || echo .
|
|
@$(if $(Q), $(shell echo echo CXX $<),)
|
|
$(Q)$(CXX) $(CXXFLAGS) $(DEFINES) -MMD -c -o $@ $<
|
|
|
|
$(OBJDIR)/%.o: %.rc $(HEADERS)
|
|
@-mkdir -p $(dir $@) || mkdir $(subst /,\,$(dir $@)) || echo .
|
|
@$(if $(Q), $(shell echo echo WINDRES $<),)
|
|
$(Q)$(WINDRES) -o $@ $<
|
|
|
|
clean:
|
|
rm -rf $(OBJDIR)
|
|
rm -f $(TARGET)
|
|
rm -f *.d
|
|
|
|
.PHONY: all install uninstall clean
|