2012-05-11 19:36:13 +03:00
|
|
|
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
|
2012-02-06 04:38:53 +02:00
|
|
|
|
2011-11-06 14:41:41 +02:00
|
|
|
#Compilers.
|
2011-11-03 22:01:19 +02:00
|
|
|
REALCC = $(CROSS_PREFIX)$(CC)
|
2012-02-06 04:38:53 +02:00
|
|
|
REALLD = $(CROSS_PREFIX)$(LD)
|
2012-05-12 13:32:45 +03:00
|
|
|
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
|
2013-01-12 14:57:58 +02:00
|
|
|
CFLAGS += -std=gnu++0x $(USER_CFLAGS)
|
2012-05-11 19:36:13 +03:00
|
|
|
ifdef BOOST_NEEDS_MT
|
|
|
|
BOOST_LIB_POSTFIX=-mt
|
2012-05-12 13:48:13 +03:00
|
|
|
else
|
|
|
|
BOOST_LIB_POSTFIX=
|
2012-03-07 17:12:42 +02:00
|
|
|
endif
|
2014-01-14 11:52:31 +02:00
|
|
|
ifdef HOST_BOOST_NEEDS_MT
|
|
|
|
HOST_BOOST_LIB_POSTFIX=-mt
|
|
|
|
else
|
|
|
|
HOST_BOOST_LIB_POSTFIX=
|
|
|
|
endif
|
2012-03-07 17:12:42 +02:00
|
|
|
|
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-05-11 19:36:13 +03:00
|
|
|
|
2012-02-12 20:23:36 +02:00
|
|
|
ifeq ($(THREADS), NATIVE)
|
|
|
|
CFLAGS += -DNATIVE_THREADS
|
|
|
|
else
|
|
|
|
ifeq ($(THREADS), BOOST)
|
|
|
|
CFLAGS += -DBOOST_THREADS
|
2012-05-11 19:36:13 +03:00
|
|
|
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
|
|
|
|
|
2014-01-20 12:59:02 +02:00
|
|
|
ifdef NEED_LIBICONV
|
|
|
|
LDFLAGS += -liconv
|
|
|
|
endif
|
|
|
|
|
2013-10-12 11:02:26 +03:00
|
|
|
ifdef USE_LIBGCRYPT
|
|
|
|
CFLAGS += -DUSE_LIBGCRYPT_SHA256
|
2013-10-15 00:11:33 +03:00
|
|
|
LDFLAGS += -lgcrypt -lgpg-error
|
2013-10-12 11:02:26 +03:00
|
|
|
endif
|
|
|
|
|
2013-11-06 22:20:08 +02:00
|
|
|
ifdef USE_LIBLZMA
|
|
|
|
CFLAGS += -DLIBLZMA_AVAILABLE
|
|
|
|
LDFLAGS += -llzma
|
|
|
|
endif
|
|
|
|
|
2013-10-23 18:06:33 +03:00
|
|
|
ifeq ($(ARCHITECTURE), I386)
|
|
|
|
CFLAGS += -DARCH_IS_I386
|
|
|
|
else
|
|
|
|
endif
|
|
|
|
|
2011-11-06 14:41:41 +02:00
|
|
|
|
2012-05-11 19:36:13 +03:00
|
|
|
export
|
2011-09-13 17:50:18 +03:00
|
|
|
|
2012-02-06 04:38:53 +02:00
|
|
|
all: src/__all_files__
|
2011-10-28 22:25:07 +03:00
|
|
|
|
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
|
|
|
|
2012-09-05 19:56:56 +03:00
|
|
|
compiler=$(subst ++,cc,$(REALCC))
|
|
|
|
gambatte_compiler=$(REALCC)
|
2012-05-12 13:16:27 +03:00
|
|
|
|
2013-01-06 23:06:08 +02: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
|
|
|
|
2014-01-23 14:26:33 +02:00
|
|
|
src/__all_files__: src/core/version.cpp buildaux/mkdeps.exe buildaux/txt2cstr.exe forcelook
|
2012-02-06 04:38:53 +02:00
|
|
|
$(MAKE) -C src precheck
|
|
|
|
$(MAKE) -C src
|
|
|
|
cp src/lsnes$(DOT_EXECUTABLE_SUFFIX) .
|
2012-01-10 13:14:11 +02:00
|
|
|
|
2014-01-23 14:26:33 +02:00
|
|
|
buildaux/txt2cstr.exe: buildaux/txt2cstr.cpp
|
|
|
|
$(HOSTCC) $(HOSTCCFLAGS) -o $@ $<
|
2012-02-12 13:13:33 +02:00
|
|
|
buildaux/version.exe: buildaux/version.cpp VERSION
|
|
|
|
$(HOSTCC) $(HOSTCCFLAGS) -o $@ $<
|
2013-12-19 02:32:20 +02:00
|
|
|
buildaux/mkdeps.exe: buildaux/mkdeps.cpp VERSION
|
2014-01-14 11:52:31 +02:00
|
|
|
$(HOSTCC) $(HOSTCCFLAGS) -o $@ $< -lboost_filesystem$(HOST_BOOST_LIB_POSTFIX) -lboost_system$(HOST_BOOST_LIB_POSTFIX)
|
2012-02-12 13:13:33 +02:00
|
|
|
src/core/version.cpp: buildaux/version.exe forcelook
|
|
|
|
buildaux/version.exe >$@
|
|
|
|
|
2014-02-14 10:17:27 +02:00
|
|
|
platclean:
|
|
|
|
$(MAKE) -C src platclean
|
2012-02-12 13:13:33 +02:00
|
|
|
|
2011-09-13 17:50:18 +03:00
|
|
|
clean:
|
2012-02-06 04:38:53 +02:00
|
|
|
$(MAKE) -C src clean
|
2013-11-24 07:46:17 +02:00
|
|
|
rm -f buildaux/version.exe
|
2012-02-06 04:38:53 +02:00
|
|
|
|
|
|
|
forcelook:
|
|
|
|
@true
|