Initial commit
This commit is contained in:
59
package/libs/libjson-c/Makefile
Normal file
59
package/libs/libjson-c/Makefile
Normal file
@@ -0,0 +1,59 @@
|
||||
#
|
||||
# Copyright (C) 2006-2014 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=json-c
|
||||
PKG_VERSION:=0.15
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-nodoc.tar.gz
|
||||
PKG_SOURCE_URL:=https://s3.amazonaws.com/json-c_releases/releases/
|
||||
PKG_HASH:=99bca4f944b8ced8ae0bbc6310d6a3528ca715e69541793a1ef51f8c5b4b0878
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_LICENSE:=MIT
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
PKG_CPE_ID:=cpe:/a:json-c_project:json-c
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
HOST_BUILD_PREFIX:=$(STAGING_DIR_HOST)
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
include $(INCLUDE_DIR)/cmake.mk
|
||||
|
||||
CMAKE_HOST_OPTIONS += \
|
||||
-DCMAKE_SKIP_RPATH=FALSE \
|
||||
-DCMAKE_MACOSX_RPATH=1 \
|
||||
-DCMAKE_INSTALL_RPATH="${STAGING_DIR_HOST}/lib"
|
||||
|
||||
define Package/libjson-c
|
||||
SECTION:=libs
|
||||
CATEGORY:=Libraries
|
||||
TITLE:=javascript object notation
|
||||
URL:=https://json-c.github.io/json-c/
|
||||
ABI_VERSION:=5
|
||||
endef
|
||||
|
||||
define Package/libjson-c/description
|
||||
This package contains a library for javascript object notation backends.
|
||||
endef
|
||||
|
||||
define Build/InstallDev
|
||||
$(call Build/InstallDev/cmake,$(1))
|
||||
$(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/json-c.pc
|
||||
$(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/json-c.pc
|
||||
endef
|
||||
|
||||
define Package/libjson-c/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libjson-c.so.* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,libjson-c))
|
||||
$(eval $(call HostBuild))
|
||||
45
package/libs/libjson-c/patches/000-libm.patch
Normal file
45
package/libs/libjson-c/patches/000-libm.patch
Normal file
@@ -0,0 +1,45 @@
|
||||
--- a/math_compat.h
|
||||
+++ b/math_compat.h
|
||||
@@ -6,38 +6,9 @@
|
||||
* @brief Do not use, json-c internal, may be changed or removed at any time.
|
||||
*/
|
||||
|
||||
-/* Define isnan, isinf, infinity and nan on Windows/MSVC */
|
||||
-
|
||||
-#ifndef HAVE_DECL_ISNAN
|
||||
-#ifdef HAVE_DECL__ISNAN
|
||||
-#include <float.h>
|
||||
-#define isnan(x) _isnan(x)
|
||||
-#else
|
||||
-/* On platforms like AIX and "IBM i" we need to provide our own isnan */
|
||||
-#define isnan(x) ((x) != (x))
|
||||
-#endif
|
||||
-#endif
|
||||
-
|
||||
-#ifndef HAVE_DECL_ISINF
|
||||
-#ifdef HAVE_DECL__FINITE
|
||||
-#include <float.h>
|
||||
-#define isinf(x) (!_finite(x))
|
||||
-#else
|
||||
-#include <float.h>
|
||||
-/* On platforms like AIX and "IBM i" we need to provide our own isinf */
|
||||
-#define isinf(x) ((x) < -DBL_MAX || (x) > DBL_MAX)
|
||||
-#endif
|
||||
-#endif
|
||||
-
|
||||
-#ifndef HAVE_DECL_INFINITY
|
||||
-#include <float.h>
|
||||
-#define INFINITY (DBL_MAX + DBL_MAX)
|
||||
-#define HAVE_DECL_INFINITY
|
||||
-#endif
|
||||
-
|
||||
-#ifndef HAVE_DECL_NAN
|
||||
-#define NAN (INFINITY - INFINITY)
|
||||
-#define HAVE_DECL_NAN
|
||||
-#endif
|
||||
+#undef isnan
|
||||
+#define isnan(x) __builtin_isnan(x)
|
||||
+#undef isinf
|
||||
+#define isinf(x) __builtin_isinf(x)
|
||||
|
||||
#endif
|
||||
11
package/libs/libjson-c/patches/001-dont-build-docs.patch
Normal file
11
package/libs/libjson-c/patches/001-dont-build-docs.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -401,8 +401,6 @@ set(JSON_C_SOURCES
|
||||
include_directories(${PROJECT_SOURCE_DIR})
|
||||
include_directories(${PROJECT_BINARY_DIR})
|
||||
|
||||
-add_subdirectory(doc)
|
||||
-
|
||||
# uninstall
|
||||
add_custom_target(uninstall
|
||||
COMMAND cat ${PROJECT_BINARY_DIR}/install_manifest.txt | xargs rm
|
||||
Reference in New Issue
Block a user