diff Makefile @ 1687:6c54bb5fe3b3

Hacky WIP libertro implementation
author Michael Pavone <pavone@retrodev.com>
date Sun, 20 Jan 2019 01:03:21 -0800
parents fa9ae059e4d3
children 395f684c5379
line wrap: on
line diff
--- a/Makefile	Sun Jan 20 01:02:48 2019 -0800
+++ b/Makefile	Sun Jan 20 01:03:21 2019 -0800
@@ -76,7 +76,11 @@
 
 else
 CFLAGS:=$(shell pkg-config --cflags-only-I $(LIBS)) $(CFLAGS)
+ifeq ($(MAKECMDGOALS),libblastem.so)
+LDFLAGS:=-lm
+else
 LDFLAGS:=-lm $(shell pkg-config --libs $(LIBS))
+endif #libblastem.so
 
 ifeq ($(OS),Darwin)
 LDFLAGS+= -framework OpenGL -framework AppKit
@@ -164,6 +168,10 @@
 MAINOBJS=blastem.o system.o genesis.o debug.o gdb_remote.o vdp.o $(RENDEROBJS) io.o romdb.o hash.o menu.o xband.o \
 	realtec.o i2c.o nor.o sega_mapper.o multi_game.o megawifi.o $(NET) serialize.o $(TERMINAL) $(CONFIGOBJS) gst.o \
 	$(M68KOBJS) $(TRANSOBJS) $(AUDIOOBJS) saves.o zip.o bindings.o jcart.o
+
+LIBOBJS=libblastem.o system.o genesis.o debug.o gdb_remote.o vdp.o io.o romdb.o hash.o menu.o xband.o realtec.o \
+	i2c.o nor.o sega_mapper.o multi_game.o megawifi.o $(NET) serialize.o $(TERMINAL) $(CONFIGOBJS) gst.o \
+	$(M68KOBJS) $(TRANSOBJS) $(AUDIOOBJS) saves.o jcart.o
 	
 ifdef NONUKLEAR
 CFLAGS+= -DDISABLE_NUKLEAR
@@ -187,6 +195,7 @@
 CFLAGS+=-DNO_Z80
 else
 MAINOBJS+= sms.o $(Z80OBJS)
+LIBOBJS+= sms.o $(Z80OBJS)
 endif
 
 ifeq ($(OS),Windows)
@@ -198,8 +207,15 @@
 ALL+= termhelper
 endif
 
+ifeq ($(MAKECMDGOALS),libblastem.so)
+CFLAGS+= -fpic
+endif
+
 all : $(ALL)
 
+libblastem.so : $(LIBOBJS)
+	$(CC) -shared -o $@ $^ $(LDFLAGS)
+
 blastem$(EXE) : $(MAINOBJS)
 	$(CC) -o $@ $^ $(LDFLAGS)
 	$(FIXUP) ./$@