Toshaan Bharvani
3 years ago
commit
f0e7e5dcdf
9 changed files with 1809 additions and 0 deletions
@ -0,0 +1,80 @@ |
|||||||
|
From 4a546e7b2f471157c6f479df1ef687864fcbd89e Mon Sep 17 00:00:00 2001 |
||||||
|
From: Eric Haszlakiewicz <erh+git@nimenees.com> |
||||||
|
Date: Sun, 24 May 2020 03:53:32 +0000 |
||||||
|
Subject: [PATCH] In arraylist, use malloc instead of calloc, avoid clearing |
||||||
|
with memeset until we really need to, and micro-optimize array_list_add(). |
||||||
|
|
||||||
|
--- |
||||||
|
arraylist.c | 29 +++++++++++++++++++++++++---- |
||||||
|
1 file changed, 25 insertions(+), 4 deletions(-) |
||||||
|
|
||||||
|
diff --git a/arraylist.c b/arraylist.c |
||||||
|
index e5524aca75..3e7bfa8950 100644 |
||||||
|
--- a/arraylist.c |
||||||
|
+++ b/arraylist.c |
||||||
|
@@ -40,13 +40,13 @@ struct array_list *array_list_new(array_list_free_fn *free_fn) |
||||||
|
{ |
||||||
|
struct array_list *arr; |
||||||
|
|
||||||
|
- arr = (struct array_list *)calloc(1, sizeof(struct array_list)); |
||||||
|
+ arr = (struct array_list *)malloc(sizeof(struct array_list)); |
||||||
|
if (!arr) |
||||||
|
return NULL; |
||||||
|
arr->size = ARRAY_LIST_DEFAULT_SIZE; |
||||||
|
arr->length = 0; |
||||||
|
arr->free_fn = free_fn; |
||||||
|
- if (!(arr->array = (void **)calloc(arr->size, sizeof(void *)))) |
||||||
|
+ if (!(arr->array = (void **)malloc(arr->size * sizeof(void *)))) |
||||||
|
{ |
||||||
|
free(arr); |
||||||
|
return NULL; |
||||||
|
@@ -92,11 +92,11 @@ static int array_list_expand_internal(struct array_list *arr, size_t max) |
||||||
|
if (!(t = realloc(arr->array, new_size * sizeof(void *)))) |
||||||
|
return -1; |
||||||
|
arr->array = (void **)t; |
||||||
|
- (void)memset(arr->array + arr->size, 0, (new_size - arr->size) * sizeof(void *)); |
||||||
|
arr->size = new_size; |
||||||
|
return 0; |
||||||
|
} |
||||||
|
|
||||||
|
+//static inline int _array_list_put_idx(struct array_list *arr, size_t idx, void *data) |
||||||
|
int array_list_put_idx(struct array_list *arr, size_t idx, void *data) |
||||||
|
{ |
||||||
|
if (idx > SIZE_T_MAX - 1) |
||||||
|
@@ -106,6 +106,17 @@ int array_list_put_idx(struct array_list *arr, size_t idx, void *data) |
||||||
|
if (idx < arr->length && arr->array[idx]) |
||||||
|
arr->free_fn(arr->array[idx]); |
||||||
|
arr->array[idx] = data; |
||||||
|
+ if (idx > arr->length) |
||||||
|
+ { |
||||||
|
+ /* Zero out the arraylist slots in between the old length |
||||||
|
+ and the newly added entry so we know those entries are |
||||||
|
+ empty. |
||||||
|
+ e.g. when setting array[7] in an array that used to be |
||||||
|
+ only 5 elements longs, array[5] and array[6] need to be |
||||||
|
+ set to 0. |
||||||
|
+ */ |
||||||
|
+ memset(arr->array + arr->length, 0, (idx - arr->length) * sizeof(void *)); |
||||||
|
+ } |
||||||
|
if (arr->length <= idx) |
||||||
|
arr->length = idx + 1; |
||||||
|
return 0; |
||||||
|
@@ -113,7 +124,17 @@ int array_list_put_idx(struct array_list *arr, size_t idx, void *data) |
||||||
|
|
||||||
|
int array_list_add(struct array_list *arr, void *data) |
||||||
|
{ |
||||||
|
- return array_list_put_idx(arr, arr->length, data); |
||||||
|
+ /* Repeat some of array_list_put_idx() so we can skip several |
||||||
|
+ checks that we know are unnecessary when appending at the end |
||||||
|
+ */ |
||||||
|
+ size_t idx = arr->length; |
||||||
|
+ if (idx > SIZE_T_MAX - 1) |
||||||
|
+ return -1; |
||||||
|
+ if (array_list_expand_internal(arr, idx + 1)) |
||||||
|
+ return -1; |
||||||
|
+ arr->array[idx] = data; |
||||||
|
+ arr->length++; |
||||||
|
+ return 0; |
||||||
|
} |
||||||
|
|
||||||
|
void array_list_sort(struct array_list *arr, int (*compar)(const void *, const void *)) |
File diff suppressed because one or more lines are too long
@ -0,0 +1,59 @@ |
|||||||
|
From 8f3592b3d59874b4dd230a741fad3ffa99223a45 Mon Sep 17 00:00:00 2001 |
||||||
|
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <besser82@fedoraproject.org> |
||||||
|
Date: Mon, 18 May 2020 18:20:01 +0200 |
||||||
|
Subject: [PATCH] CMake: Fix out-of-tree build for Doxygen documentation. |
||||||
|
|
||||||
|
--- |
||||||
|
CMakeLists.txt | 9 +++++---- |
||||||
|
Doxyfile => Doxyfile.in | 4 ++-- |
||||||
|
2 files changed, 7 insertions(+), 6 deletions(-) |
||||||
|
rename Doxyfile => Doxyfile.in (99%) |
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt |
||||||
|
index 901eb6e364..f58301c71a 100644 |
||||||
|
--- a/CMakeLists.txt |
||||||
|
+++ b/CMakeLists.txt |
||||||
|
@@ -368,13 +368,14 @@ option(BUILD_DOCUMENTATION "Create and install the HTML based API documentation( |
||||||
|
|
||||||
|
if (DOXYGEN_FOUND) |
||||||
|
|
||||||
|
+ configure_file(${PROJECT_SOURCE_DIR}/Doxyfile.in |
||||||
|
+ ${PROJECT_BINARY_DIR}/Doxyfile) |
||||||
|
+ message(STATUS "Written ${PROJECT_BINARY_DIR}/Doxyfile") |
||||||
|
+ |
||||||
|
add_custom_target(doc |
||||||
|
- COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_SOURCE_DIR}/Doxyfile |
||||||
|
+ COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile |
||||||
|
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}) |
||||||
|
|
||||||
|
- # request to configure the file |
||||||
|
- configure_file(Doxyfile Doxyfile) |
||||||
|
- |
||||||
|
else (DOXYGEN_FOUND) |
||||||
|
message("Warning: doxygen not found, the 'doc' target will not be included") |
||||||
|
endif(DOXYGEN_FOUND) |
||||||
|
diff --git a/Doxyfile b/Doxyfile.in |
||||||
|
similarity index 99% |
||||||
|
rename from Doxyfile |
||||||
|
rename to Doxyfile.in |
||||||
|
index 06d54e661e..42a08535c2 100644 |
||||||
|
--- a/Doxyfile |
||||||
|
+++ b/Doxyfile.in |
||||||
|
@@ -38,7 +38,7 @@ PROJECT_NAME = json-c |
||||||
|
# could be handy for archiving the generated documentation or if some version |
||||||
|
# control system is used. |
||||||
|
|
||||||
|
-PROJECT_NUMBER = 0.14 |
||||||
|
+PROJECT_NUMBER = @PROJECT_VERSION@ |
||||||
|
|
||||||
|
# Using the PROJECT_BRIEF tag one can provide an optional one line description |
||||||
|
# for a project that appears at the top of each page and should give viewer a |
||||||
|
@@ -753,7 +753,7 @@ WARN_LOGFILE = |
||||||
|
# spaces. |
||||||
|
# Note: If this tag is empty the current directory is searched. |
||||||
|
|
||||||
|
-INPUT = |
||||||
|
+INPUT = @CMAKE_SOURCE_DIR@ @CMAKE_BINARY_DIR@ |
||||||
|
|
||||||
|
# This tag can be used to specify the character encoding of the source files |
||||||
|
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses |
@ -0,0 +1,23 @@ |
|||||||
|
From 228881c8fc287182f284a58d8279a32fbeae0b7f Mon Sep 17 00:00:00 2001 |
||||||
|
From: Eric Haszlakiewicz <erh+git@nimenees.com> |
||||||
|
Date: Tue, 21 Apr 2020 01:13:21 +0000 |
||||||
|
Subject: [PATCH] Issue #585: don't install config.h |
||||||
|
|
||||||
|
(cherry picked from commit 8b511c402b73d1d8b195991891c8d44859cb57ec) |
||||||
|
--- |
||||||
|
CMakeLists.txt | 2 +- |
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-) |
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt |
||||||
|
index ba692fff69..c51f477c5f 100644 |
||||||
|
--- a/CMakeLists.txt |
||||||
|
+++ b/CMakeLists.txt |
||||||
|
@@ -299,7 +299,7 @@ if ($ENV{VALGRIND}) |
||||||
|
endif() |
||||||
|
|
||||||
|
set(JSON_C_PUBLIC_HEADERS |
||||||
|
- ${PROJECT_BINARY_DIR}/config.h |
||||||
|
+ # Note: config.h is _not_ included here |
||||||
|
${PROJECT_BINARY_DIR}/json_config.h |
||||||
|
|
||||||
|
${PROJECT_SOURCE_DIR}/json.h |
@ -0,0 +1,74 @@ |
|||||||
|
From 003b58782b12798da3da8b952152988a88dfb532 Mon Sep 17 00:00:00 2001 |
||||||
|
From: Pierce Lopez <pierce.lopez@gmail.com> |
||||||
|
Date: Sun, 10 May 2020 13:20:02 -0400 |
||||||
|
Subject: [PATCH] fix json_parse_uint64() usage of errno |
||||||
|
|
||||||
|
introduced in #542 |
||||||
|
fixes #601 |
||||||
|
--- |
||||||
|
json_util.c | 8 +++----- |
||||||
|
json_util.h | 1 + |
||||||
|
tests/test_parse_int64.expected | 8 ++++---- |
||||||
|
3 files changed, 8 insertions(+), 9 deletions(-) |
||||||
|
|
||||||
|
diff --git a/json_util.c b/json_util.c |
||||||
|
index d3ee47df72..e8e2ec6bcb 100644 |
||||||
|
--- a/json_util.c |
||||||
|
+++ b/json_util.c |
||||||
|
@@ -245,19 +245,17 @@ int json_parse_uint64(const char *buf, uint64_t *retval) |
||||||
|
{ |
||||||
|
char *end = NULL; |
||||||
|
uint64_t val; |
||||||
|
- errno = 1; |
||||||
|
|
||||||
|
+ errno = 0; |
||||||
|
while (*buf == ' ') |
||||||
|
- { |
||||||
|
buf++; |
||||||
|
- } |
||||||
|
if (*buf == '-') |
||||||
|
- errno = 0; |
||||||
|
+ return 1; /* error: uint cannot be negative */ |
||||||
|
|
||||||
|
val = strtoull(buf, &end, 10); |
||||||
|
if (end != buf) |
||||||
|
*retval = val; |
||||||
|
- return ((errno == 0) || (end == buf)) ? 1 : 0; |
||||||
|
+ return ((val == 0 && errno != 0) || (end == buf)) ? 1 : 0; |
||||||
|
} |
||||||
|
|
||||||
|
#ifndef HAVE_REALLOC |
||||||
|
diff --git a/json_util.h b/json_util.h |
||||||
|
index 2a4b6c19bd..7520f036c4 100644 |
||||||
|
--- a/json_util.h |
||||||
|
+++ b/json_util.h |
||||||
|
@@ -100,6 +100,7 @@ JSON_EXPORT int json_object_to_fd(int fd, struct json_object *obj, int flags); |
||||||
|
*/ |
||||||
|
JSON_EXPORT const char *json_util_get_last_err(void); |
||||||
|
|
||||||
|
+/* these parsing helpers return zero on success */ |
||||||
|
JSON_EXPORT int json_parse_int64(const char *buf, int64_t *retval); |
||||||
|
JSON_EXPORT int json_parse_uint64(const char *buf, uint64_t *retval); |
||||||
|
JSON_EXPORT int json_parse_double(const char *buf, double *retval); |
||||||
|
diff --git a/tests/test_parse_int64.expected b/tests/test_parse_int64.expected |
||||||
|
index f4c5750b0b..6dca94b470 100644 |
||||||
|
--- a/tests/test_parse_int64.expected |
||||||
|
+++ b/tests/test_parse_int64.expected |
||||||
|
@@ -34,13 +34,13 @@ buf=123 parseit=0, value=123 |
||||||
|
==========json_parse_uint64() test=========== |
||||||
|
buf=x parseit=1, value=666 |
||||||
|
buf=0 parseit=0, value=0 |
||||||
|
-buf=-0 parseit=1, value=0 |
||||||
|
+buf=-0 parseit=1, value=666 |
||||||
|
buf=00000000 parseit=0, value=0 |
||||||
|
-buf=-00000000 parseit=1, value=0 |
||||||
|
+buf=-00000000 parseit=1, value=666 |
||||||
|
buf=1 parseit=0, value=1 |
||||||
|
buf=2147483647 parseit=0, value=2147483647 |
||||||
|
-buf=-1 parseit=1, value=18446744073709551615 |
||||||
|
-buf=-9223372036854775808 parseit=1, value=9223372036854775808 |
||||||
|
+buf=-1 parseit=1, value=666 |
||||||
|
+buf=-9223372036854775808 parseit=1, value=666 |
||||||
|
buf= 1 parseit=0, value=1 |
||||||
|
buf=00001234 parseit=0, value=1234 |
||||||
|
buf=0001234x parseit=0, value=1234 |
@ -0,0 +1,121 @@ |
|||||||
|
From 61e2bae5111b49a788fe4c236b473dc86250a7fe Mon Sep 17 00:00:00 2001 |
||||||
|
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <besser82@fedoraproject.org> |
||||||
|
Date: Mon, 18 May 2020 20:32:35 +0200 |
||||||
|
Subject: [PATCH 1/2] doc: Move Doxyfile into doc subdir |
||||||
|
|
||||||
|
--- |
||||||
|
.gitignore | 2 +- |
||||||
|
CMakeLists.txt | 19 +------------------ |
||||||
|
doc/CMakeLists.txt | 16 ++++++++++++++++ |
||||||
|
Doxyfile.in => doc/Doxyfile.in | 2 +- |
||||||
|
4 files changed, 19 insertions(+), 20 deletions(-) |
||||||
|
create mode 100644 doc/CMakeLists.txt |
||||||
|
rename Doxyfile.in => doc/Doxyfile.in (99%) |
||||||
|
|
||||||
|
diff --git a/.gitignore b/.gitignore |
||||||
|
index 958ace3ac1..1cdaf9bdba 100644 |
||||||
|
--- a/.gitignore |
||||||
|
+++ b/.gitignore |
||||||
|
@@ -83,7 +83,7 @@ |
||||||
|
/Testing/ |
||||||
|
|
||||||
|
# ...and build artifacts. |
||||||
|
-/doc |
||||||
|
+/doc/html |
||||||
|
/libjson-c.a |
||||||
|
/libjson-c.so |
||||||
|
/libjson-c.so.* |
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt |
||||||
|
index f58301c71a..ec17697170 100644 |
||||||
|
--- a/CMakeLists.txt |
||||||
|
+++ b/CMakeLists.txt |
||||||
|
@@ -361,24 +361,7 @@ set(JSON_C_SOURCES |
||||||
|
include_directories(${PROJECT_SOURCE_DIR}) |
||||||
|
include_directories(${PROJECT_BINARY_DIR}) |
||||||
|
|
||||||
|
-# generate doxygen documentation for json-c API |
||||||
|
- |
||||||
|
-find_package(Doxygen) |
||||||
|
-option(BUILD_DOCUMENTATION "Create and install the HTML based API documentation(requires Doxygen)" ${DOXYGEN_FOUND}) |
||||||
|
- |
||||||
|
-if (DOXYGEN_FOUND) |
||||||
|
- |
||||||
|
- configure_file(${PROJECT_SOURCE_DIR}/Doxyfile.in |
||||||
|
- ${PROJECT_BINARY_DIR}/Doxyfile) |
||||||
|
- message(STATUS "Written ${PROJECT_BINARY_DIR}/Doxyfile") |
||||||
|
- |
||||||
|
- add_custom_target(doc |
||||||
|
- COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile |
||||||
|
- WORKING_DIRECTORY ${PROJECT_BINARY_DIR}) |
||||||
|
- |
||||||
|
-else (DOXYGEN_FOUND) |
||||||
|
- message("Warning: doxygen not found, the 'doc' target will not be included") |
||||||
|
-endif(DOXYGEN_FOUND) |
||||||
|
+add_subdirectory(doc) |
||||||
|
|
||||||
|
# uninstall |
||||||
|
add_custom_target(uninstall |
||||||
|
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..4872d8e8ad |
||||||
|
--- /dev/null |
||||||
|
+++ b/doc/CMakeLists.txt |
||||||
|
@@ -0,0 +1,16 @@ |
||||||
|
+# generate doxygen documentation for json-c API |
||||||
|
+ |
||||||
|
+find_package(Doxygen) |
||||||
|
+ |
||||||
|
+if (DOXYGEN_FOUND) |
||||||
|
+ |
||||||
|
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in |
||||||
|
+ ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) |
||||||
|
+ message(STATUS "Wrote ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile") |
||||||
|
+ |
||||||
|
+ add_custom_target(doc |
||||||
|
+ COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) |
||||||
|
+ |
||||||
|
+else (DOXYGEN_FOUND) |
||||||
|
+ message("Warning: doxygen not found, the 'doc' target will not be included") |
||||||
|
+endif(DOXYGEN_FOUND) |
||||||
|
diff --git a/Doxyfile.in b/doc/Doxyfile.in |
||||||
|
similarity index 99% |
||||||
|
rename from Doxyfile.in |
||||||
|
rename to doc/Doxyfile.in |
||||||
|
index 42a08535c2..ce8d8ff78c 100644 |
||||||
|
--- a/Doxyfile.in |
||||||
|
+++ b/doc/Doxyfile.in |
||||||
|
@@ -58,7 +58,7 @@ PROJECT_LOGO = |
||||||
|
# entered, it will be relative to the location where doxygen was started. If |
||||||
|
# left blank the current directory will be used. |
||||||
|
|
||||||
|
-OUTPUT_DIRECTORY = doc |
||||||
|
+OUTPUT_DIRECTORY = @CMAKE_CURRENT_BINARY_DIR@ |
||||||
|
|
||||||
|
# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- |
||||||
|
# directories (in 2 levels) under the output directory of each output format and |
||||||
|
|
||||||
|
From 1e94da779a9aa107690e4f2921ab4d0300aca579 Mon Sep 17 00:00:00 2001 |
||||||
|
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <besser82@fedoraproject.org> |
||||||
|
Date: Mon, 18 May 2020 20:36:05 +0200 |
||||||
|
Subject: [PATCH 2/2] CMake: Fix grammar: written -> wrote. |
||||||
|
|
||||||
|
--- |
||||||
|
CMakeLists.txt | 4 ++-- |
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-) |
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt |
||||||
|
index ec17697170..333513c5e0 100644 |
||||||
|
--- a/CMakeLists.txt |
||||||
|
+++ b/CMakeLists.txt |
||||||
|
@@ -237,9 +237,9 @@ endif() |
||||||
|
|
||||||
|
# Once we've done basic symbol/header searches let's add them in. |
||||||
|
configure_file(${PROJECT_SOURCE_DIR}/cmake/config.h.in ${PROJECT_BINARY_DIR}/config.h) |
||||||
|
-message(STATUS "Written ${PROJECT_BINARY_DIR}/config.h") |
||||||
|
+message(STATUS "Wrote ${PROJECT_BINARY_DIR}/config.h") |
||||||
|
configure_file(${PROJECT_SOURCE_DIR}/cmake/json_config.h.in ${PROJECT_BINARY_DIR}/json_config.h) |
||||||
|
-message(STATUS "Written ${PROJECT_BINARY_DIR}/json_config.h") |
||||||
|
+message(STATUS "Wrote ${PROJECT_BINARY_DIR}/json_config.h") |
||||||
|
|
||||||
|
if ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU") |
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffunction-sections -fdata-sections") |
@ -0,0 +1,22 @@ |
|||||||
|
From 3008401b2a8f5b25bf5665cafa22b335d9ffdb3a Mon Sep 17 00:00:00 2001 |
||||||
|
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <besser82@fedoraproject.org> |
||||||
|
Date: Mon, 18 May 2020 17:00:17 +0200 |
||||||
|
Subject: [PATCH] test_deep_copy: Fix assertion value. |
||||||
|
|
||||||
|
--- |
||||||
|
tests/test_deep_copy.c | 2 +- |
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-) |
||||||
|
|
||||||
|
diff --git a/tests/test_deep_copy.c b/tests/test_deep_copy.c |
||||||
|
index b6c1b999f4..34ef1fe5d3 100644 |
||||||
|
--- a/tests/test_deep_copy.c |
||||||
|
+++ b/tests/test_deep_copy.c |
||||||
|
@@ -126,7 +126,7 @@ int main(int argc, char **argv) |
||||||
|
src3 = json_tokener_parse(json_str3); |
||||||
|
|
||||||
|
assert(src1 != NULL); |
||||||
|
- assert(src1 != NULL); |
||||||
|
+ assert(src2 != NULL); |
||||||
|
assert(src3 != NULL); |
||||||
|
|
||||||
|
printf("PASSED - loaded input data\n"); |
@ -0,0 +1,187 @@ |
|||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt |
||||||
|
index 21e395ed3c..da0af963ed 100644 |
||||||
|
--- a/CMakeLists.txt |
||||||
|
+++ b/CMakeLists.txt |
||||||
|
@@ -325,6 +325,22 @@ if (NOT ("${CMAKE_C_COMPILER_ID}" STREQUAL "MSVC")) |
||||||
|
# XXX need cmake>=3.13 for this: |
||||||
|
#add_link_options("-Wl,-Bsymbolic-functions") |
||||||
|
endif() |
||||||
|
+ |
||||||
|
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/check-version-script.sym" "TEST { global: *; };") |
||||||
|
+ list(APPEND CMAKE_REQUIRED_LIBRARIES "-Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/check-version-script.sym") |
||||||
|
+ check_c_source_compiles( |
||||||
|
+ " |
||||||
|
+ int main (void) |
||||||
|
+ { |
||||||
|
+ return 0; |
||||||
|
+ } |
||||||
|
+ " |
||||||
|
+ VERSION_SCRIPT_WORKS |
||||||
|
+ ) |
||||||
|
+ list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES "-Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/check-version-script.sym") |
||||||
|
+ if (VERSION_SCRIPT_WORKS) |
||||||
|
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/json-c.sym") |
||||||
|
+ endif() |
||||||
|
endif() |
||||||
|
|
||||||
|
if ($ENV{VALGRIND}) |
||||||
|
diff --git a/json-c.sym b/json-c.sym |
||||||
|
new file mode 100644 |
||||||
|
index 0000000000..bf78792b7e |
||||||
|
--- /dev/null |
||||||
|
+++ b/json-c.sym |
||||||
|
@@ -0,0 +1,153 @@ |
||||||
|
+JSONC_0.14 { |
||||||
|
+ global: |
||||||
|
+ _json_c_set_last_err; |
||||||
|
+ _json_c_strerror; |
||||||
|
+ _json_c_strerror_enable; |
||||||
|
+ array_list_add; |
||||||
|
+ array_list_bsearch; |
||||||
|
+ array_list_del_idx; |
||||||
|
+ array_list_free; |
||||||
|
+ array_list_get_idx; |
||||||
|
+ array_list_length; |
||||||
|
+ array_list_new; |
||||||
|
+ array_list_put_idx; |
||||||
|
+ array_list_sort; |
||||||
|
+ json_c_get_random_seed; |
||||||
|
+ json_c_object_sizeof; |
||||||
|
+ json_c_set_serialization_double_format; |
||||||
|
+ json_c_shallow_copy_default; |
||||||
|
+ json_c_version; |
||||||
|
+ json_c_version_num; |
||||||
|
+ json_c_visit; |
||||||
|
+ json_global_set_string_hash; |
||||||
|
+ json_hex_chars; |
||||||
|
+ json_number_chars; |
||||||
|
+ json_object_array_add; |
||||||
|
+ json_object_array_bsearch; |
||||||
|
+ json_object_array_del_idx; |
||||||
|
+ json_object_array_get_idx; |
||||||
|
+ json_object_array_length; |
||||||
|
+ json_object_array_put_idx; |
||||||
|
+ json_object_array_sort; |
||||||
|
+ json_object_deep_copy; |
||||||
|
+ json_object_double_to_json_string; |
||||||
|
+ json_object_equal; |
||||||
|
+ json_object_free_userdata; |
||||||
|
+ json_object_from_fd; |
||||||
|
+ json_object_from_fd_ex; |
||||||
|
+ json_object_from_file; |
||||||
|
+ json_object_get; |
||||||
|
+ json_object_get_array; |
||||||
|
+ json_object_get_boolean; |
||||||
|
+ json_object_get_double; |
||||||
|
+ json_object_get_int64; |
||||||
|
+ json_object_get_int; |
||||||
|
+ json_object_get_object; |
||||||
|
+ json_object_get_string; |
||||||
|
+ json_object_get_string_len; |
||||||
|
+ json_object_get_type; |
||||||
|
+ json_object_get_uint64; |
||||||
|
+ json_object_get_userdata; |
||||||
|
+ json_object_int_inc; |
||||||
|
+ json_object_is_type; |
||||||
|
+ json_object_iter_begin; |
||||||
|
+ json_object_iter_end; |
||||||
|
+ json_object_iter_equal; |
||||||
|
+ json_object_iter_init_default; |
||||||
|
+ json_object_iter_next; |
||||||
|
+ json_object_iter_peek_name; |
||||||
|
+ json_object_iter_peek_value; |
||||||
|
+ json_object_new_array; |
||||||
|
+ json_object_new_boolean; |
||||||
|
+ json_object_new_double; |
||||||
|
+ json_object_new_double_s; |
||||||
|
+ json_object_new_int64; |
||||||
|
+ json_object_new_int; |
||||||
|
+ json_object_new_null; |
||||||
|
+ json_object_new_object; |
||||||
|
+ json_object_new_string; |
||||||
|
+ json_object_new_string_len; |
||||||
|
+ json_object_new_uint64; |
||||||
|
+ json_object_object_add; |
||||||
|
+ json_object_object_add_ex; |
||||||
|
+ json_object_object_del; |
||||||
|
+ json_object_object_get; |
||||||
|
+ json_object_object_get_ex; |
||||||
|
+ json_object_object_length; |
||||||
|
+ json_object_put; |
||||||
|
+ json_object_set_boolean; |
||||||
|
+ json_object_set_double; |
||||||
|
+ json_object_set_int64; |
||||||
|
+ json_object_set_int; |
||||||
|
+ json_object_set_serializer; |
||||||
|
+ json_object_set_string; |
||||||
|
+ json_object_set_string_len; |
||||||
|
+ json_object_set_uint64; |
||||||
|
+ json_object_set_userdata; |
||||||
|
+ json_object_to_fd; |
||||||
|
+ json_object_to_file; |
||||||
|
+ json_object_to_file_ext; |
||||||
|
+ json_object_to_json_string; |
||||||
|
+ json_object_to_json_string_ext; |
||||||
|
+ json_object_to_json_string_length; |
||||||
|
+ json_object_userdata_to_json_string; |
||||||
|
+ json_parse_double; |
||||||
|
+ json_parse_int64; |
||||||
|
+ json_parse_uint64; |
||||||
|
+ json_pointer_get; |
||||||
|
+ json_pointer_getf; |
||||||
|
+ json_pointer_set; |
||||||
|
+ json_pointer_setf; |
||||||
|
+ json_tokener_error_desc; |
||||||
|
+ json_tokener_free; |
||||||
|
+ json_tokener_get_error; |
||||||
|
+ json_tokener_get_parse_end; |
||||||
|
+ json_tokener_new; |
||||||
|
+ json_tokener_new_ex; |
||||||
|
+ json_tokener_parse; |
||||||
|
+ json_tokener_parse_ex; |
||||||
|
+ json_tokener_parse_verbose; |
||||||
|
+ json_tokener_reset; |
||||||
|
+ json_tokener_set_flags; |
||||||
|
+ json_type_to_name; |
||||||
|
+ json_util_get_last_err; |
||||||
|
+ lh_char_equal; |
||||||
|
+ lh_kchar_table_new; |
||||||
|
+ lh_kptr_table_new; |
||||||
|
+ lh_ptr_equal; |
||||||
|
+ lh_table_delete; |
||||||
|
+ lh_table_delete_entry; |
||||||
|
+ lh_table_free; |
||||||
|
+ lh_table_insert; |
||||||
|
+ lh_table_insert_w_hash; |
||||||
|
+ lh_table_length; |
||||||
|
+ lh_table_lookup; |
||||||
|
+ lh_table_lookup_entry; |
||||||
|
+ lh_table_lookup_entry_w_hash; |
||||||
|
+ lh_table_lookup_ex; |
||||||
|
+ lh_table_new; |
||||||
|
+ lh_table_resize; |
||||||
|
+ mc_debug; |
||||||
|
+ mc_error; |
||||||
|
+ mc_get_debug; |
||||||
|
+ mc_info; |
||||||
|
+ mc_set_debug; |
||||||
|
+ mc_set_syslog; |
||||||
|
+ printbuf_free; |
||||||
|
+ printbuf_memappend; |
||||||
|
+ printbuf_memset; |
||||||
|
+ printbuf_new; |
||||||
|
+ printbuf_reset; |
||||||
|
+ sprintbuf; |
||||||
|
+ |
||||||
|
+ local: |
||||||
|
+ *; |
||||||
|
+}; |
||||||
|
+ |
||||||
|
+JSONC_0.15 { |
||||||
|
+ global: |
||||||
|
+ array_list_new2; |
||||||
|
+ array_list_shrink; |
||||||
|
+ json_object_array_shrink; |
||||||
|
+ json_object_new_array_ext; |
||||||
|
+} JSONC_0.14; |
||||||
|
|
@ -0,0 +1,369 @@ |
|||||||
|
%{!?_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}} |
||||||
|
|
||||||
|
# We don't want accidental SONAME bumps. |
||||||
|
# When there is a SONAME bump in json-c, we need to request |
||||||
|
# a side-tag for bootstrap purposes: |
||||||
|
# |
||||||
|
# 1. Build a bootstrap build of the systemd package, and wait |
||||||
|
# for it to be available inside the side-tag. |
||||||
|
# 2. Re-build the following build-chain for bootstrap: |
||||||
|
# json-c : cryptsetup |
||||||
|
# 3. Untag the systemd bootstrap build from the side-tag, and |
||||||
|
# disable bootstrapping in the systemd package. Re-build |
||||||
|
# the systemd package into Rawhide. |
||||||
|
# 4. Wait for the changes to populate and re-build the following |
||||||
|
# chain into the side-tag: |
||||||
|
# satyr : libdnf libreport |
||||||
|
# 5. Merge the side-tag using Bodhi. |
||||||
|
# |
||||||
|
# After that procedure any other cosumers can be re-build |
||||||
|
# in Rawhide as usual. |
||||||
|
%global so_ver 5 |
||||||
|
|
||||||
|
# Releases are tagged with a date stamp. |
||||||
|
%global reldate 20200419 |
||||||
|
|
||||||
|
|
||||||
|
Name: json-c |
||||||
|
Version: 0.14 |
||||||
|
Release: 11%{?dist} |
||||||
|
Summary: JSON implementation in C |
||||||
|
|
||||||
|
License: MIT |
||||||
|
URL: https://github.com/%{name}/%{name} |
||||||
|
Source0: %{url}/archive/%{name}-%{version}-%{reldate}.tar.gz |
||||||
|
|
||||||
|
# Cherry-picked from upstream. |
||||||
|
Patch0001: %{url}/commit/228881c8fc287182f284a58d8279a32fbeae0b7f.patch#/%{name}-0.14-dont_install_config_h.patch |
||||||
|
Patch0002: %{url}/pull/603.patch#/%{name}-0.14-backport_fixes_from_master.patch |
||||||
|
Patch0003: %{url}/commit/003b58782b12798da3da8b952152988a88dfb532.patch#/%{name}-0.14-fix_usage_of_errno_in_json_parse_uint64.patch |
||||||
|
Patch0004: %{url}/pull/618.patch#/%{name}-0.14-test_deep_copy_fix_assertion_value.patch |
||||||
|
Patch0005: %{url}/pull/619.patch#/%{name}-0.14-cmake_fix_out_of_tree_build_for_Doxygen_documentation.patch |
||||||
|
Patch0006: %{url}/pull/622.patch#/%{name}-0.14-move_Doxyfile_into_doc_subdir.patch |
||||||
|
Patch0007: %{url}/commit/4a546e7b2f471157c6f479df1ef687864fcbd89e.patch#/%{name}-0.14-arraylist_optimizations.patch |
||||||
|
# Start providing versioned symbols |
||||||
|
# rhbz#2001067 |
||||||
|
Patch0008: json-c-0.14-versioned-symbols.patch |
||||||
|
|
||||||
|
BuildRequires: cmake |
||||||
|
BuildRequires: gcc |
||||||
|
BuildRequires: ninja-build |
||||||
|
%ifarch %{valgrind_arches} |
||||||
|
BuildRequires: valgrind |
||||||
|
%endif |
||||||
|
|
||||||
|
%description |
||||||
|
JSON-C implements a reference counting object model that allows you |
||||||
|
to easily construct JSON objects in C, output them as JSON formatted |
||||||
|
strings and parse JSON formatted strings back into the C representation |
||||||
|
of JSON objects. It aims to conform to RFC 7159. |
||||||
|
|
||||||
|
|
||||||
|
%package devel |
||||||
|
Summary: Development files for %{name} |
||||||
|
Requires: %{name}%{?_isa} = %{version}-%{release} |
||||||
|
|
||||||
|
%description devel |
||||||
|
This package contains libraries and header files for |
||||||
|
developing applications that use %{name}. |
||||||
|
|
||||||
|
|
||||||
|
%package doc |
||||||
|
Summary: Reference manual for json-c |
||||||
|
|
||||||
|
BuildArch: noarch |
||||||
|
|
||||||
|
BuildRequires: doxygen |
||||||
|
BuildRequires: hardlink |
||||||
|
|
||||||
|
%description doc |
||||||
|
This package contains the reference manual for %{name}. |
||||||
|
|
||||||
|
|
||||||
|
%prep |
||||||
|
%autosetup -n %{name}-%{name}-%{version}-%{reldate} -p 1 |
||||||
|
|
||||||
|
# Remove pre-built html documentation. |
||||||
|
rm -fr doc/html |
||||||
|
|
||||||
|
# Update Doxyfile. |
||||||
|
doxygen -s -u doc/Doxyfile.in |
||||||
|
|
||||||
|
|
||||||
|
%build |
||||||
|
%cmake \ |
||||||
|
-DBUILD_STATIC_LIBS:BOOL=OFF \ |
||||||
|
-DCMAKE_BUILD_TYPE:STRING=RELEASE \ |
||||||
|
-DCMAKE_C_FLAGS_RELEASE:STRING="" \ |
||||||
|
-DDISABLE_BSYMBOLIC:BOOL=OFF \ |
||||||
|
-DDISABLE_WERROR:BOOL=ON \ |
||||||
|
-DENABLE_RDRAND:BOOL=ON \ |
||||||
|
-DENABLE_THREADING:BOOL=ON \ |
||||||
|
-G Ninja |
||||||
|
%cmake_build --target all doc |
||||||
|
|
||||||
|
|
||||||
|
%install |
||||||
|
%cmake_install |
||||||
|
|
||||||
|
# Documentation |
||||||
|
mkdir -p %{buildroot}%{_pkgdocdir} |
||||||
|
cp -a %{__cmake_builddir}/doc/html ChangeLog README README.* \ |
||||||
|
%{buildroot}%{_pkgdocdir} |
||||||
|
hardlink -cfv %{buildroot}%{_pkgdocdir} |
||||||
|
|
||||||
|
|
||||||
|
%check |
||||||
|
export USE_VALGRIND=0 |
||||||
|
%ctest |
||||||
|
%ifarch %{valgrind_arches} |
||||||
|
export USE_VALGRIND=1 |
||||||
|
%ctest |
||||||
|
%endif |
||||||
|
unset USE_VALGRIND |
||||||
|
|
||||||
|
|
||||||
|
%ldconfig_scriptlets |
||||||
|
|
||||||
|
|
||||||
|
%files |
||||||
|
%license AUTHORS |
||||||
|
%license COPYING |
||||||
|
%{_libdir}/lib%{name}.so.%{so_ver}* |
||||||
|
|
||||||
|
|
||||||
|
%files devel |
||||||
|
%doc %dir %{_pkgdocdir} |
||||||
|
%doc %{_pkgdocdir}/ChangeLog |
||||||
|
%doc %{_pkgdocdir}/README* |
||||||
|
%{_includedir}/%{name} |
||||||
|
%{_libdir}/cmake/%{name} |
||||||
|
%{_libdir}/lib%{name}.so |
||||||
|
%{_libdir}/pkgconfig/%{name}.pc |
||||||
|
|
||||||
|
|
||||||
|
%files doc |
||||||
|
%if 0%{?fedora} || 0%{?rhel} >= 7 |
||||||
|
%license %{_datadir}/licenses/%{name}* |
||||||
|
%endif |
||||||
|
%doc %{_pkgdocdir} |
||||||
|
|
||||||
|
|
||||||
|
%changelog |
||||||
|
* Tue Sep 14 2021 Tomas Korbar <tkorbar@redhat.com> - 0.14-11 |
||||||
|
- Start providing versioned symbols |
||||||
|
- Resolves: rhbz#2001067 |
||||||
|
|
||||||
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0.14-10 |
||||||
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags |
||||||
|
Related: rhbz#1991688 |
||||||
|
|
||||||
|
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 0.14-9 |
||||||
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 |
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-8 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Jul 27 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-7 |
||||||
|
- Use new cmake macros |
||||||
|
|
||||||
|
* Tue May 26 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-6 |
||||||
|
- Build using Ninja instead of Make |
||||||
|
- Add a patch to move Doxyfile into doc subdir |
||||||
|
- Remove pre-built html documentation |
||||||
|
- Update Doxyfile during %%prep |
||||||
|
- Add a patch to apply some optimizations to arraylist |
||||||
|
- Hardlink the files in %%_pkgdocdir |
||||||
|
|
||||||
|
* Mon May 25 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-5 |
||||||
|
- Run the testssuite with valgrind on %%valgrind_arches |
||||||
|
|
||||||
|
* Mon May 18 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-4 |
||||||
|
- Add a patch to fix a test |
||||||
|
- Add a patch to fix generation of user-documentation |
||||||
|
|
||||||
|
* Mon May 11 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-3 |
||||||
|
- Add upstream patch fixing usage of errno in json_parse_uint64() |
||||||
|
|
||||||
|
* Sun May 10 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-2 |
||||||
|
- Add a patch to backport fixes applied on upstream master branch |
||||||
|
- Re-enable RDRAND as json-c can detect broken implementations in CPUs now |
||||||
|
- Disable -Werror during build |
||||||
|
|
||||||
|
* Tue Apr 21 2020 Björn Esser <besser82@fedoraproject.org> - 0.14-1 |
||||||
|
- Update to 0.14 |
||||||
|
|
||||||
|
* Mon Apr 20 2020 Björn Esser <besser82@fedoraproject.org> - 0.13.99-0.4.20200416gita911439 |
||||||
|
- Remove config.h file from installation |
||||||
|
- Drop hardlinking of the documentation files |
||||||
|
|
||||||
|
* Thu Apr 16 2020 Björn Esser <besser82@fedoraproject.org> - 0.13.99-0.3.20200416gita911439 |
||||||
|
- Update to recent git snapshot |
||||||
|
|
||||||
|
* Tue Apr 14 2020 Björn Esser <besser82@fedoraproject.org> - 0.13.99-0.2.20200414git7fb8d56 |
||||||
|
- Update to recent git snapshot |
||||||
|
|
||||||
|
* Tue Apr 14 2020 Björn Esser <besser82@fedoraproject.org> - 0.13.99-0.1.20200414gitab5425a |
||||||
|
- Update to recent git snapshot using forge macros |
||||||
|
|
||||||
|
* Sun Apr 12 2020 Björn Esser <besser82@fedoraproject.org> - 0.13.1-11 |
||||||
|
- Drop bootstrap logic, as the package is no dependency of @build anymore |
||||||
|
- Add some explicit BuildRequires, which were implicit |
||||||
|
- Small spec file cleanups |
||||||
|
|
||||||
|
* Sat Apr 11 2020 Björn Esser <besser82@fedoraproject.org> - 0.13.1-10 |
||||||
|
- Add explicit configure switch to disable rdrand |
||||||
|
- Add explicit configure switch to enable linking with Bsymbolic |
||||||
|
- Do not use macros to invoke executables |
||||||
|
- Drop obsolete %%pretrans scriptlet |
||||||
|
|
||||||
|
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-9 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild |
||||||
|
|
||||||
|
* Thu Nov 28 2019 Petr Menšík <pemensik@redhat.com> - 0.13.1-8 |
||||||
|
- Remove empty doc dir from library package |
||||||
|
|
||||||
|
* Wed Nov 06 2019 Miroslav Lichvar <mlichvar@redhat.com> 0.13.1-7 |
||||||
|
- Disable rdrand support (#1745333) |
||||||
|
|
||||||
|
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-6 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Jun 26 2019 Björn Esser <besser82@fedoraproject.org> - 0.13.1-5 |
||||||
|
- Use hardlink without full path to the binary (#1721964) |
||||||
|
- Use new style bootstrap logic |
||||||
|
|
||||||
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-4 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild |
||||||
|
|
||||||
|
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-3 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue May 08 2018 Björn Esser <besser82@fedoraproject.org> - 0.13.1-2 |
||||||
|
- Add some cherry-picked fixes from upstream master |
||||||
|
|
||||||
|
* Tue Mar 06 2018 Björn Esser <besser82@fedoraproject.org> - 0.13.1-1 |
||||||
|
- New upstream release (rhbz#1552053) |
||||||
|
|
||||||
|
* Tue Mar 06 2018 Björn Esser <besser82@fedoraproject.org> - 0.13.1-0.1 |
||||||
|
- Bootstrapping for so-name bump |
||||||
|
|
||||||
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.13-7 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
||||||
|
|
||||||
|
* Fri Feb 02 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.13-6 |
||||||
|
- Switch to %%ldconfig_scriptlets |
||||||
|
|
||||||
|
* Thu Dec 14 2017 Björn Esser <besser82@fedoraproject.org> - 0.13-5 |
||||||
|
- Update patch fixing a segfault caused by possible invalid frees |
||||||
|
|
||||||
|
* Wed Dec 13 2017 Björn Esser <besser82@fedoraproject.org> - 0.13-4 |
||||||
|
- Add upstream patch fixing invalid free in some cases |
||||||
|
|
||||||
|
* Wed Dec 13 2017 Björn Esser <besser82@fedoraproject.org> - 0.13-3 |
||||||
|
- Add upstream patch for adding size_t json_c_object_sizeof() |
||||||
|
- Enable partial multi-threaded support |
||||||
|
|
||||||
|
* Mon Dec 11 2017 Björn Esser <besser82@fedoraproject.org> - 0.13-2 |
||||||
|
- Drop json_object_private.h |
||||||
|
|
||||||
|
* Mon Dec 11 2017 Björn Esser <besser82@fedoraproject.org> - 0.13-1 |
||||||
|
- New upstream release (rhbz#1524155) |
||||||
|
|
||||||
|
* Sun Dec 10 2017 Björn Esser <besser82@fedoraproject.org> - 0.13-0.1 |
||||||
|
- Bootstrapping for so-name bump |
||||||
|
- Keep json_object_private.h |
||||||
|
|
||||||
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.1-4 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.1-3 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Jul 03 2017 Björn Esser <besser82@fedoraproject.org> - 0.12.1-2 |
||||||
|
- Add patch to replace obsolete autotools macro |
||||||
|
|
||||||
|
* Thu Apr 27 2017 Björn Esser <besser82@fedoraproject.org> - 0.12.1-1 |
||||||
|
- Update to new upstream release |
||||||
|
- Introduces SONAME bump, that should have been in 0.12 already |
||||||
|
- Unify %%doc |
||||||
|
- General spec-file cleanup |
||||||
|
|
||||||
|
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.12-8 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild |
||||||
|
|
||||||
|
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.12-7 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.12-6 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild |
||||||
|
|
||||||
|
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.12-5 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Jul 29 2014 Christopher Meng <rpm@cicku.me> - 0.12-4 |
||||||
|
- SONAME bump postponed. |
||||||
|
|
||||||
|
* Mon Jul 28 2014 Christopher Meng <rpm@cicku.me> - 0.12-3 |
||||||
|
- SONAME bump, see bug 1123785 |
||||||
|
|
||||||
|
* Fri Jul 25 2014 Christopher Meng <rpm@cicku.me> - 0.12-2 |
||||||
|
- NVR bump |
||||||
|
|
||||||
|
* Thu Jul 24 2014 Christopher Meng <rpm@cicku.me> - 0.12-1 |
||||||
|
- Update to 0.12 |
||||||
|
|
||||||
|
* Sat Jul 12 2014 Tom Callaway <spot@fedoraproject.org> - 0.11-8 |
||||||
|
- fix license handling |
||||||
|
|
||||||
|
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.11-7 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Apr 09 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.11-7 |
||||||
|
- Address CVE-2013-6371 and CVE-2013-6370 (BZ #1085676 and #1085677). |
||||||
|
- Enabled rdrand support. |
||||||
|
|
||||||
|
* Mon Feb 10 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.11-6 |
||||||
|
- Bump spec. |
||||||
|
|
||||||
|
* Sat Dec 21 2013 Ville Skyttä <ville.skytta@iki.fi> - 0.11-5 |
||||||
|
- Run test suite during build. |
||||||
|
- Drop empty NEWS from docs. |
||||||
|
|
||||||
|
* Tue Sep 10 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.11-4 |
||||||
|
- Remove default warning flags so that package builds on EPEL as well. |
||||||
|
|
||||||
|
* Sat Aug 24 2013 Remi Collet <remi@fedoraproject.org> - 0.11-3 |
||||||
|
- increase parser strictness for php |
||||||
|
|
||||||
|
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.11-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Apr 29 2013 Remi Collet <remi@fedoraproject.org> - 0.11-1 |
||||||
|
- update to 0.11 |
||||||
|
- fix source0 |
||||||
|
- enable both json and json-c libraries |
||||||
|
|
||||||
|
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10-3 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild |
||||||
|
|
||||||
|
* Sat Nov 24 2012 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.10-2 |
||||||
|
- Compile and install json_object_iterator using Remi Collet's fix (BZ #879771). |
||||||
|
|
||||||
|
* Sat Nov 24 2012 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.10-1 |
||||||
|
- Update to 0.10 (BZ #879771). |
||||||
|
|
||||||
|
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-5 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild |
||||||
|
|
||||||
|
* Mon Jan 23 2012 Jiri Pirko <jpirko@redhat.com> - 0.9-4 |
||||||
|
- add json_tokener_parse_verbose, and return NULL on parser errors |
||||||
|
|
||||||
|
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-3 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild |
||||||
|
|
||||||
|
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-2 |
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild |
||||||
|
|
||||||
|
* Tue Apr 06 2010 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.9-1 |
||||||
|
- First release. |
Loading…
Reference in new issue