aboutsummaryrefslogtreecommitdiff
path: root/tools/android/depends/yajl
diff options
context:
space:
mode:
authortheuni <theuni-nospam-@xbmc.org>2012-05-26 10:52:02 -0400
committerCory Fields <theuni-nospam-@xbmc.org>2012-08-08 18:47:59 -0400
commitec1213d22cdde8d3df1a25df46b30061bffe7aa1 (patch)
tree0345ff8e9afd1a63a2e0a470407b57da6fb15e1d /tools/android/depends/yajl
parent67ee34f2370c4fa6d816a82ede4cb65aa936458c (diff)
[droid] add depends
Diffstat (limited to 'tools/android/depends/yajl')
-rw-r--r--tools/android/depends/yajl/Makefile52
-rw-r--r--tools/android/depends/yajl/shared.patch20
-rw-r--r--tools/android/depends/yajl/static.patch19
3 files changed, 91 insertions, 0 deletions
diff --git a/tools/android/depends/yajl/Makefile b/tools/android/depends/yajl/Makefile
new file mode 100644
index 0000000000..03965dc68b
--- /dev/null
+++ b/tools/android/depends/yajl/Makefile
@@ -0,0 +1,52 @@
+include ../Makefile.include
+DEPS= ../Makefile.include Makefile static.patch
+
+# lib name, version
+LIBNAME=yajl
+VERSION=2.0.1
+SOURCE=lloyd-$(LIBNAME)-f4b2b1a
+ARCHIVE=$(LIBNAME)-$(VERSION).tar.gz
+CMAKE=$(PREFIX)/bin/cmake
+# configuration settings
+LIBDYLIB=$(PLATFORM)/build/$(LIBNAME)-$(VERSION)/lib/libyajl.a
+
+CLEAN_FILES=$(ARCHIVE) $(PLATFORM)
+
+all: .installed-$(PLATFORM)
+
+$(TARBALLS_LOCATION)/$(ARCHIVE):
+ $(RETRIEVE_TOOL) $(RETRIEVE_TOOL_FLAGS) $(BASE_URL)/$(ARCHIVE)
+
+$(PLATFORM): $(TARBALLS_LOCATION)/$(ARCHIVE) $(DEPS)
+ rm -rf $(PLATFORM)/*; mkdir -p $(PLATFORM)
+ $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE)
+ sed -ie "s|ADD_CUSTOM_TARGET|#ADD_CUSTOM_TARGET|g" "$(PLATFORM)/CMakeLists.txt"
+ sed -ie "s|./run_tests.sh|#./run_tests.sh|g" "$(PLATFORM)/CMakeLists.txt"
+ sed -ie "s|WORKING_DIRECTORY|#WORKING_DIRECTORY|g" "$(PLATFORM)/CMakeLists.txt"
+ sed -ie "s|ADD_SUBDIRECTORY(reformatter)|#ADD_SUBDIRECTORY(reformatter)|g" "$(PLATFORM)/CMakeLists.txt"
+ cd $(PLATFORM); patch -p0 < ../static.patch
+ cd $(PLATFORM); patch -p0 < ../shared.patch
+ cd $(PLATFORM); rm -rf build; mkdir -p build
+ cd $(PLATFORM)/build; CC=$(CC) CXX=$(CXX) cmake \
+ -DCMAKE_C_FLAGS:STRING="$(CPPFLAGS) $(CFLAGS)" \
+ -DCMAKE_CXX_FLAGS:STRING="$(CPPFLAGS) $(CXXFLAGS)" \
+ -DCMAKE_INCLUDE_PATH=$(PREFIX)/include \
+ -DCMAKE_LIBRARY_PATH=$(PREFIX)/lib \
+ -DCMAKE_INSTALL_NAME_DIR=$(PREFIX)/lib \
+ -DCMAKE_INSTALL_PREFIX=$(PREFIX) \
+ -DCMAKE_SYSTEM_NAME=Linux \
+ -DCMAKE_FIND_ROOT_PATH=$(platform_sdk_path) ..
+
+$(LIBDYLIB): $(PLATFORM)
+ $(MAKE) -C $(PLATFORM)/build
+
+.installed-$(PLATFORM): $(LIBDYLIB)
+ $(MAKE) -C $(PLATFORM)/build install
+ touch $@
+
+clean:
+ $(MAKE) -C $(PLATFORM)/build clean
+ rm -f .installed-$(PLATFORM)
+
+distclean::
+ rm -rf $(PLATFORM) .installed-$(PLATFORM)
diff --git a/tools/android/depends/yajl/shared.patch b/tools/android/depends/yajl/shared.patch
new file mode 100644
index 0000000000..13ea0c7464
--- /dev/null
+++ b/tools/android/depends/yajl/shared.patch
@@ -0,0 +1,20 @@
+--- src/CMakeLists.txt.orig 2012-06-22 21:09:34.000000000 +0200
++++ src/CMakeLists.txt 2012-06-22 21:11:49.000000000 +0200
+@@ -40,6 +40,8 @@
+
+ TARGET_LINK_LIBRARIES(yajl_s m)
+
++TARGET_LINK_LIBRARIES(yajl m)
++
+ #### setup shared library version number
+ SET_TARGET_PROPERTIES(yajl PROPERTIES
+ DEFINE_SYMBOL YAJL_SHARED
+@@ -79,7 +79,7 @@
+ IF(NOT WIN32)
+ # at build time you may specify the cmake variable LIB_SUFFIX to handle
+ # 64-bit systems which use 'lib64'
+- INSTALL(TARGETS yajl LIBRARY DESTINATION lib${LIB_SUFFIX})
++# INSTALL(TARGETS yajl LIBRARY DESTINATION lib${LIB_SUFFIX})
+ INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
+ INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
+ INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
diff --git a/tools/android/depends/yajl/static.patch b/tools/android/depends/yajl/static.patch
new file mode 100644
index 0000000000..ca1a9433ef
--- /dev/null
+++ b/tools/android/depends/yajl/static.patch
@@ -0,0 +1,19 @@
+--- src/CMakeLists.txt.orig 2011-04-28 04:48:41.000000000 +0200
++++ src/CMakeLists.txt 2012-06-22 21:07:59.000000000 +0200
+@@ -38,12 +38,16 @@
+
+ ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS})
+
++TARGET_LINK_LIBRARIES(yajl_s m)
++
+ #### setup shared library version number
+ SET_TARGET_PROPERTIES(yajl PROPERTIES
+ DEFINE_SYMBOL YAJL_SHARED
+ SOVERSION ${YAJL_MAJOR}
+ VERSION ${YAJL_MAJOR}.${YAJL_MINOR}.${YAJL_MICRO})
+
++SET_TARGET_PROPERTIES(yajl_s PROPERTIES OUTPUT_NAME yajl)
++
+ #### ensure a .dylib has correct absolute installation paths upon installation
+ IF(APPLE)
+ MESSAGE("INSTALL_NAME_DIR: ${CMAKE_INSTALL_PREFIX}/lib")