Blame 0005-Allow-builds-without-bundling-the-libraries.patch

fd59d4f
From ccf3bd265e4631376919dd3b5cbaf95f17f6cb8e Mon Sep 17 00:00:00 2001
fd59d4f
From: Lubomir Rintel <lkundrak@v3.sk>
fd59d4f
Date: Sat, 14 Nov 2015 18:14:43 +0100
fd59d4f
Subject: [PATCH 5/7] Allow builds without bundling the libraries
fd59d4f
fd59d4f
---
fd59d4f
 makefile              | 64 ++++++++++++++++++++++++++++++++++++++++-----------
fd59d4f
 src/core/main.cpp     |  2 +-
fd59d4f
 src/include/toolkit.h | 22 ++++--------------
fd59d4f
 3 files changed, 56 insertions(+), 32 deletions(-)
fd59d4f
fd59d4f
diff --git a/makefile b/makefile
fd59d4f
index 4d31b04..9386d70 100644
fd59d4f
--- a/makefile
fd59d4f
+++ b/makefile
fd59d4f
@@ -95,43 +95,79 @@ src/chip/tflipflop.cpp \
fd59d4f
 src/basecode/toolkit.cpp \
fd59d4f
 src/core/wire.cpp \
fd59d4f
 src/chip/xorchip.cpp \
fd59d4f
-src/core/AtanuaConfig.cpp \
fd59d4f
+src/core/AtanuaConfig.cpp
fd59d4f
+
fd59d4f
+atanua-c-src = \
fd59d4f
+src/8051/core.c \
fd59d4f
+src/8051/disasm.c \
fd59d4f
+src/8051/opcodes.c
fd59d4f
+
fd59d4f
+atanua-obj = $(atanua-cpp-src:.cpp=.o) $(atanua-c-src:.c=.o)
fd59d4f
+
fd59d4f
+tinyxml-cpp-src = \
fd59d4f
 src/tinyxml_2_5_3/tinyxml/tinystr.cpp \
fd59d4f
 src/tinyxml_2_5_3/tinyxml/tinyxml.cpp \
fd59d4f
 src/tinyxml_2_5_3/tinyxml/tinyxmlerror.cpp \
fd59d4f
 src/tinyxml_2_5_3/tinyxml/tinyxmlparser.cpp \
fd59d4f
 
fd59d4f
-atanua-c-src = \
fd59d4f
-src/8051/core.c \
fd59d4f
-src/8051/disasm.c \
fd59d4f
-src/8051/opcodes.c \
fd59d4f
+tinyxml-obj = $(tinyxml-cpp-src:.cpp=.o)
fd59d4f
+
fd59d4f
+stb-c-src = \
fd59d4f
 src/stb/stb_image.c \
fd59d4f
-src/stb/stb_image_write.c \
fd59d4f
+src/stb/stb_image_write.c
fd59d4f
+
fd59d4f
+stb-obj = $(stb-c-src:.c=.o)
fd59d4f
+
fd59d4f
+glee-c-src = \
fd59d4f
 src/glee/GLee.c
fd59d4f
 
fd59d4f
-atanua-obj = $(atanua-cpp-src:.cpp=.o) $(atanua-c-src:.c=.o)
fd59d4f
+glee-obj = $(glee-c-src:.c=.o)
fd59d4f
 
fd59d4f
 CXX = clang
fd59d4f
 CC = clang
fd59d4f
 CFLAGS = -O3
fd59d4f
 
fd59d4f
-gtk_CFLAGS = $(shell pkg-config --cflags gtk+-3.0)
fd59d4f
 glib_CFLAGS = $(shell pkg-config --cflags glib-2.0)
fd59d4f
-sdl_CFLAGS = $(shell pkg-config --cflags sdl)
fd59d4f
-gtk_LDFLAGS = $(shell pkg-config --libs gtk+-3.0)
fd59d4f
 glib_LDFLAGS = $(shell pkg-config --libs glib-2.0)
fd59d4f
+
fd59d4f
+gtk_CFLAGS = $(shell pkg-config --cflags gtk+-3.0)
fd59d4f
+gtk_LDFLAGS = $(shell pkg-config --libs gtk+-3.0)
fd59d4f
+
fd59d4f
+sdl_CFLAGS = $(shell pkg-config --cflags sdl)
fd59d4f
 sdl_LDFLAGS = $(shell pkg-config --libs sdl)
fd59d4f
 
fd59d4f
-override CFLAGS += $(gtk_CFLAGS)
fd59d4f
+ifdef UNBUNDLE
fd59d4f
+
fd59d4f
+# Link against the system libraries
fd59d4f
+tinyxml_LDFLAGS += -ltinyxml
fd59d4f
+stb_LDFLAGS += -lstbi
fd59d4f
+glee_LDFLAGS += -lGLee
fd59d4f
+
fd59d4f
+else
fd59d4f
+
fd59d4f
+# Build bundled copies
fd59d4f
+tinyxml_CFLAGS = -Isrc/tinyxml_2_5_3/tinyxml
fd59d4f
+stb_CFLAGS = -Isrc/stb
fd59d4f
+glee_CFLAGS = -Isrc/glee
fd59d4f
+atanua-obj += $(tinyxml-obj) $(stb-obj) $(glee-obj)
fd59d4f
+
fd59d4f
+endif
fd59d4f
+
fd59d4f
 override CFLAGS += $(glib_CFLAGS)
fd59d4f
+override CFLAGS += $(gtk_CFLAGS)
fd59d4f
 override CFLAGS += $(sdl_CFLAGS)
fd59d4f
-override CFLAGS += -Isrc -Isrc/include -Isrc/tinyxml_2_5_3/tinyxml
fd59d4f
-
fd59d4f
+override CFLAGS += $(stb_CFLAGS)
fd59d4f
+override CFLAGS += $(tinyxml_CFLAGS)
fd59d4f
+override CFLAGS += $(glee_CFLAGS)
fd59d4f
+override CFLAGS += -Isrc -Isrc/include -I/usr/include/GL -I/usr/include/OpenGL
fd59d4f
 override CXXFLAGS += $(CFLAGS)
fd59d4f
 
fd59d4f
-override LDFLAGS += $(gtk_LDFLAGS)
fd59d4f
 override LDFLAGS += $(glib_LDFLAGS)
fd59d4f
+override LDFLAGS += $(gtk_LDFLAGS)
fd59d4f
 override LDFLAGS += $(sdl_LDFLAGS)
fd59d4f
+override LDFLAGS += $(stb_LDFLAGS)
fd59d4f
+override LDFLAGS += $(tinyxml_LDFLAGS)
fd59d4f
+override LDFLAGS += $(glee_LDFLAGS)
fd59d4f
 override LDFLAGS += -lGL -lGLU -lm -ldl -lstdc++
fd59d4f
 
fd59d4f
 atanua: $(atanua-obj)
fd59d4f
diff --git a/src/core/main.cpp b/src/core/main.cpp
fd59d4f
index 635a669..a92d2bc 100644
fd59d4f
--- a/src/core/main.cpp
fd59d4f
+++ b/src/core/main.cpp
fd59d4f
@@ -27,7 +27,7 @@ distribution.
fd59d4f
 #include "basechipfactory.h"
fd59d4f
 #include "pluginchipfactory.h"
fd59d4f
 
fd59d4f
-#include "stb/stb_image_write.h"
fd59d4f
+#include <stb_image_write.h>
fd59d4f
 
fd59d4f
 #define C_MENUBG 0xff3f4f4f
fd59d4f
 #define C_WIDGETBG 0xff3f5f6f
fd59d4f
diff --git a/src/include/toolkit.h b/src/include/toolkit.h
fd59d4f
index 061962a..f24ae43 100644
fd59d4f
--- a/src/include/toolkit.h
fd59d4f
+++ b/src/include/toolkit.h
fd59d4f
@@ -54,35 +54,23 @@ distribution.
fd59d4f
 #define LINUX_VERSION
fd59d4f
 #endif
fd59d4f
 
fd59d4f
+#include <SDL/SDL.h>
fd59d4f
+#include <stb_image.h>
fd59d4f
+#include <GLee.h>
fd59d4f
+#include <gl.h>
fd59d4f
+#include <glu.h>
fd59d4f
 
fd59d4f
 #ifdef WINDOWS_VERSION
fd59d4f
 #include <windows.h> // needed to get GL stuff to work
fd59d4f
-#include <SDL.h>
fd59d4f
-#include "stb/stb_image.h"
fd59d4f
-#include "glee/glee.h"
fd59d4f
-#include <GL/gl.h>
fd59d4f
-#include <GL/glu.h>
fd59d4f
 #define stricmp _stricmp
fd59d4f
 #define strdup _strdup
fd59d4f
 #endif
fd59d4f
 
fd59d4f
-
fd59d4f
 #ifdef OSX_VERSION
fd59d4f
-#include <SDL/SDL.h>
fd59d4f
-#include "stb/stb_image.h"
fd59d4f
-#include "glee/GLee.h"
fd59d4f
-#include <OpenGL/gl.h>
fd59d4f
-#include <OpenGL/glu.h>
fd59d4f
 #define stricmp(a,b) strcasecmp((a),(b))
fd59d4f
 #endif
fd59d4f
 
fd59d4f
-
fd59d4f
 #ifdef LINUX_VERSION
fd59d4f
-#include <SDL/SDL.h>
fd59d4f
-#include "stb/stb_image.h"
fd59d4f
-#include "glee/GLee.h"
fd59d4f
-#include <GL/gl.h>
fd59d4f
-#include <GL/glu.h>
fd59d4f
 #define stricmp(a,b) strcasecmp((a),(b))
fd59d4f
 #endif
fd59d4f
 
fd59d4f
-- 
fd59d4f
2.5.0
fd59d4f