lsnes/Makefile

98 lines
2.1 KiB
Makefile
Raw Normal View History

OPTIONS=options.build
include $(OPTIONS)
2011-11-06 14:41:41 +02:00
2012-10-16 00:00:53 +03:00
ifndef LUA
LUA=lua
endif
2011-11-06 14:41:41 +02:00
#Compilers.
REALCC = $(CROSS_PREFIX)$(CC)
REALLD = $(CROSS_PREFIX)$(LD)
REALRANLIB = $(CROSS_PREFIX)$(RANLIB)
2011-09-21 00:10:34 +03:00
2011-11-06 14:41:41 +02:00
#Flags.
HOSTCCFLAGS = -std=gnu++0x
CFLAGS += -std=gnu++0x $(USER_CFLAGS)
ifdef BOOST_NEEDS_MT
BOOST_LIB_POSTFIX=-mt
else
BOOST_LIB_POSTFIX=
endif
ifdef HOST_BOOST_NEEDS_MT
HOST_BOOST_LIB_POSTFIX=-mt
else
HOST_BOOST_LIB_POSTFIX=
endif
2013-11-18 20:21:57 +02:00
LDFLAGS = -lboost_iostreams$(BOOST_LIB_POSTFIX) -lboost_filesystem$(BOOST_LIB_POSTFIX) -lboost_system$(BOOST_LIB_POSTFIX) -lboost_regex$(BOOST_LIB_POSTFIX) -lz -lcurl $(USER_LDFLAGS)
2012-02-12 20:23:36 +02:00
ifeq ($(THREADS), NATIVE)
CFLAGS += -DNATIVE_THREADS
else
ifeq ($(THREADS), BOOST)
CFLAGS += -DBOOST_THREADS
LDFLAGS += -lboost_thread$(BOOST_LIB_POSTFIX)
2012-02-12 20:23:36 +02:00
else
$(error "Bad value for THREADS (expected NATIVE or BOOST)")
endif
endif
ifdef NEED_LIBICONV
LDFLAGS += -liconv
endif
ifdef USE_LIBGCRYPT
CFLAGS += -DUSE_LIBGCRYPT_SHA256
2013-10-15 00:11:33 +03:00
LDFLAGS += -lgcrypt -lgpg-error
endif
2013-11-06 22:20:08 +02:00
ifdef USE_LIBLZMA
CFLAGS += -DLIBLZMA_AVAILABLE
LDFLAGS += -llzma
endif
ifeq ($(ARCHITECTURE), I386)
CFLAGS += -DARCH_IS_I386
else
endif
2011-11-06 14:41:41 +02:00
export
all: src/__all_files__
2012-10-16 17:39:55 +03:00
CFLAGS += $(shell $(CROSS_PREFIX)pkg-config $(LUA) --cflags)
LDFLAGS += $(shell $(CROSS_PREFIX)pkg-config $(LUA) --libs)
2012-05-12 13:16:27 +03:00
compiler=$(subst ++,cc,$(REALCC))
gambatte_compiler=$(REALCC)
2012-05-12 13:16:27 +03:00
bsnes/out/libsnes.$(ARCHIVE_SUFFIX): forcelook
$(MAKE) -C bsnes $(BSNES_PROFILE_STRING) $(BSNES_TARGET_STRING)
$(REALRANLIB) bsnes/out/libsnes.$(ARCHIVE_SUFFIX)
2012-05-12 13:16:27 +03:00
src/__all_files__: src/core/version.cpp buildaux/mkdeps.exe buildaux/txt2cstr.exe forcelook
$(MAKE) -C src precheck
$(MAKE) -C src
cp src/lsnes$(DOT_EXECUTABLE_SUFFIX) .
buildaux/txt2cstr.exe: buildaux/txt2cstr.cpp
$(HOSTCC) $(HOSTCCFLAGS) -o $@ $<
buildaux/version.exe: buildaux/version.cpp VERSION
$(HOSTCC) $(HOSTCCFLAGS) -o $@ $<
buildaux/mkdeps.exe: buildaux/mkdeps.cpp VERSION
$(HOSTCC) $(HOSTCCFLAGS) -o $@ $< -lboost_filesystem$(HOST_BOOST_LIB_POSTFIX) -lboost_system$(HOST_BOOST_LIB_POSTFIX)
src/core/version.cpp: buildaux/version.exe forcelook
buildaux/version.exe >$@
platclean:
$(MAKE) -C src platclean
clean:
$(MAKE) -C src clean
rm -f buildaux/version.exe
forcelook:
@true