json-c: update to current upstream head, with --disable-werror

Submitted by Andrii Bordunov via Openembedded-core on June 11, 2019, 1:57 a.m. | Patch ID: 162089

Details

Message ID 20190611015756.19184-1-douglas.royds@taitradio.com
State New
Headers show

Commit Message

Andrii Bordunov via Openembedded-core June 11, 2019, 1:57 a.m.
Upstream json-c haven't made a release since March 2018.
Adopt the current HEAD revision, pulling it directly from git.

icecc preprocesses source files locally before shipping them off to be compiled
on remote hosts. This preprocessing removes comments, including /* fallthough */
comments in switch statements that normally prevent an implicit-fallthrough
warning, see https://github.com/icecc/icecream/issues/419

Rather than turning off -Werror by patching configure.ac, the upstream project
has implemented a configure option, --disable-werror, in response to Ross's
https://github.com/json-c/json-c/issues/489

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
---
 meta/recipes-devtools/json-c/json-c_0.13.1.bb | 30 -------------------
 meta/recipes-devtools/json-c/json-c_git.bb    | 19 ++++++++++++
 2 files changed, 19 insertions(+), 30 deletions(-)
 delete mode 100644 meta/recipes-devtools/json-c/json-c_0.13.1.bb
 create mode 100644 meta/recipes-devtools/json-c/json-c_git.bb

Patch hide | download patch | download mbox

diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
deleted file mode 100644
index 5b10e68297..0000000000
--- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
+++ /dev/null
@@ -1,30 +0,0 @@ 
-SUMMARY = "C bindings for apps which will manipulate JSON data"
-DESCRIPTION = "JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C."
-HOMEPAGE = "https://github.com/json-c/json-c/wiki"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
-
-SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
-SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
-SRC_URI[sha256sum] = "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
-
-UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
-# json-c releases page is fetching the list of releases in some weird XML format
-# from https://s3.amazonaws.com/json-c_releases and processes it with javascript :-/
-#UPSTREAM_CHECK_URI = "https://s3.amazonaws.com/json-c_releases/releases/index.html"
-RECIPE_UPSTREAM_VERSION = "0.13.1"
-RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
-CHECK_DATE = "May 02, 2018"
-
-RPROVIDES_${PN} = "libjson"
-
-inherit autotools
-
-EXTRA_OECONF = "--enable-rdrand"
-
-do_configure_prepend() {
-    # Clean up autoconf cruft that should not be in the tarball
-    rm -f ${S}/config.status
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/json-c/json-c_git.bb b/meta/recipes-devtools/json-c/json-c_git.bb
new file mode 100644
index 0000000000..07daa5ba11
--- /dev/null
+++ b/meta/recipes-devtools/json-c/json-c_git.bb
@@ -0,0 +1,19 @@ 
+SUMMARY = "C bindings for apps which will manipulate JSON data"
+DESCRIPTION = "JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C."
+HOMEPAGE = "https://github.com/json-c/json-c/wiki"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
+
+SRC_URI = "git://github.com/json-c/json-c.git"
+SRCREV = "07ea04e65193c3e5c902c5b79421d5fa48ff67c7"
+S = "${WORKDIR}/git"
+
+RPROVIDES_${PN} = "libjson"
+
+inherit autotools
+
+EXTRA_OECONF = "--disable-werror \
+                --enable-rdrand \
+                "
+
+BBCLASSEXTEND = "native nativesdk"

Comments

Kang Kai June 11, 2019, 2:46 a.m.
On 2019/6/11 上午9:57, Douglas Royds via Openembedded-core wrote:
> Upstream json-c haven't made a release since March 2018.
> Adopt the current HEAD revision, pulling it directly from git.
>
> icecc preprocesses source files locally before shipping them off to be compiled
> on remote hosts. This preprocessing removes comments, including /* fallthough */
> comments in switch statements that normally prevent an implicit-fallthrough
> warning, see https://github.com/icecc/icecream/issues/419
>
> Rather than turning off -Werror by patching configure.ac, the upstream project
> has implemented a configure option, --disable-werror, in response to Ross's
> https://github.com/json-c/json-c/issues/489
>
> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
> ---
>   meta/recipes-devtools/json-c/json-c_0.13.1.bb | 30 -------------------
>   meta/recipes-devtools/json-c/json-c_git.bb    | 19 ++++++++++++

Use option '-M' of git format-patch may make the patch more clear. And 
why not just backport the 'disable-werror' commit?

Regards,
Kai


>   2 files changed, 19 insertions(+), 30 deletions(-)
>   delete mode 100644 meta/recipes-devtools/json-c/json-c_0.13.1.bb
>   create mode 100644 meta/recipes-devtools/json-c/json-c_git.bb
>
> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> deleted file mode 100644
> index 5b10e68297..0000000000
> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> +++ /dev/null
> @@ -1,30 +0,0 @@
> -SUMMARY = "C bindings for apps which will manipulate JSON data"
> -DESCRIPTION = "JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C."
> -HOMEPAGE = "https://github.com/json-c/json-c/wiki"
> -LICENSE = "MIT"
> -LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
> -
> -SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
> -SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
> -SRC_URI[sha256sum] = "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
> -
> -UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
> -# json-c releases page is fetching the list of releases in some weird XML format
> -# from https://s3.amazonaws.com/json-c_releases and processes it with javascript :-/
> -#UPSTREAM_CHECK_URI = "https://s3.amazonaws.com/json-c_releases/releases/index.html"
> -RECIPE_UPSTREAM_VERSION = "0.13.1"
> -RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
> -CHECK_DATE = "May 02, 2018"
> -
> -RPROVIDES_${PN} = "libjson"
> -
> -inherit autotools
> -
> -EXTRA_OECONF = "--enable-rdrand"
> -
> -do_configure_prepend() {
> -    # Clean up autoconf cruft that should not be in the tarball
> -    rm -f ${S}/config.status
> -}
> -
> -BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-devtools/json-c/json-c_git.bb b/meta/recipes-devtools/json-c/json-c_git.bb
> new file mode 100644
> index 0000000000..07daa5ba11
> --- /dev/null
> +++ b/meta/recipes-devtools/json-c/json-c_git.bb
> @@ -0,0 +1,19 @@
> +SUMMARY = "C bindings for apps which will manipulate JSON data"
> +DESCRIPTION = "JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C."
> +HOMEPAGE = "https://github.com/json-c/json-c/wiki"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
> +
> +SRC_URI = "git://github.com/json-c/json-c.git"
> +SRCREV = "07ea04e65193c3e5c902c5b79421d5fa48ff67c7"
> +S = "${WORKDIR}/git"
> +
> +RPROVIDES_${PN} = "libjson"
> +
> +inherit autotools
> +
> +EXTRA_OECONF = "--disable-werror \
> +                --enable-rdrand \
> +                "
> +
> +BBCLASSEXTEND = "native nativesdk"
Andrii Bordunov via Openembedded-core June 11, 2019, 3:04 a.m.
On 11/06/19 2:46 PM, Kang Kai wrote:

> On 2019/6/11 上午9:57, Douglas Royds via Openembedded-core wrote:
>> Upstream json-c haven't made a release since March 2018.
>> Adopt the current HEAD revision, pulling it directly from git.
>>
>> icecc preprocesses source files locally before shipping them off to 
>> be compiled
>> on remote hosts. This preprocessing removes comments, including /* 
>> fallthough */
>> comments in switch statements that normally prevent an 
>> implicit-fallthrough
>> warning, see https://github.com/icecc/icecream/issues/419
>>
>> Rather than turning off -Werror by patching configure.ac, the 
>> upstream project
>> has implemented a configure option, --disable-werror, in response to 
>> Ross's
>> https://github.com/json-c/json-c/issues/489
>>
>> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
>> ---
>>   meta/recipes-devtools/json-c/json-c_0.13.1.bb | 30 -------------------
>>   meta/recipes-devtools/json-c/json-c_git.bb    | 19 ++++++++++++
>
> Use option '-M' of git format-patch may make the patch more clear. And 
> why not just backport the 'disable-werror' commit?


Re '-M': True, fair point.

Re the backport: There hasn't been a release in over a year, they don't 
seem to have any plans to do so (see 
https://github.com/json-c/json-c/issues/487), and this was easier. If 
you have a substantial objection, yes, I could submit it again with a 
patch instead of the update.


>
> Regards,
> Kai
>
>
>>   2 files changed, 19 insertions(+), 30 deletions(-)
>>   delete mode 100644 meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>   create mode 100644 meta/recipes-devtools/json-c/json-c_git.bb
>>
>> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb 
>> b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>> deleted file mode 100644
>> index 5b10e68297..0000000000
>> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>> +++ /dev/null
>> @@ -1,30 +0,0 @@
>> -SUMMARY = "C bindings for apps which will manipulate JSON data"
>> -DESCRIPTION = "JSON-C implements a reference counting object model 
>> that allows you to easily construct JSON objects in C."
>> -HOMEPAGE = "https://github.com/json-c/json-c/wiki"
>> -LICENSE = "MIT"
>> -LIC_FILES_CHKSUM = 
>> "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
>> -
>> -SRC_URI = 
>> "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
>> -SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
>> -SRC_URI[sha256sum] = 
>> "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
>> -
>> -UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
>> -# json-c releases page is fetching the list of releases in some 
>> weird XML format
>> -# from https://s3.amazonaws.com/json-c_releases and processes it 
>> with javascript :-/
>> -#UPSTREAM_CHECK_URI = 
>> "https://s3.amazonaws.com/json-c_releases/releases/index.html"
>> -RECIPE_UPSTREAM_VERSION = "0.13.1"
>> -RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
>> -CHECK_DATE = "May 02, 2018"
>> -
>> -RPROVIDES_${PN} = "libjson"
>> -
>> -inherit autotools
>> -
>> -EXTRA_OECONF = "--enable-rdrand"
>> -
>> -do_configure_prepend() {
>> -    # Clean up autoconf cruft that should not be in the tarball
>> -    rm -f ${S}/config.status
>> -}
>> -
>> -BBCLASSEXTEND = "native nativesdk"
>> diff --git a/meta/recipes-devtools/json-c/json-c_git.bb 
>> b/meta/recipes-devtools/json-c/json-c_git.bb
>> new file mode 100644
>> index 0000000000..07daa5ba11
>> --- /dev/null
>> +++ b/meta/recipes-devtools/json-c/json-c_git.bb
>> @@ -0,0 +1,19 @@
>> +SUMMARY = "C bindings for apps which will manipulate JSON data"
>> +DESCRIPTION = "JSON-C implements a reference counting object model 
>> that allows you to easily construct JSON objects in C."
>> +HOMEPAGE = "https://github.com/json-c/json-c/wiki"
>> +LICENSE = "MIT"
>> +LIC_FILES_CHKSUM = 
>> "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
>> +
>> +SRC_URI = "git://github.com/json-c/json-c.git"
>> +SRCREV = "07ea04e65193c3e5c902c5b79421d5fa48ff67c7"
>> +S = "${WORKDIR}/git"
>> +
>> +RPROVIDES_${PN} = "libjson"
>> +
>> +inherit autotools
>> +
>> +EXTRA_OECONF = "--disable-werror \
>> +                --enable-rdrand \
>> +                "
>> +
>> +BBCLASSEXTEND = "native nativesdk"
>
>
Kang Kai June 11, 2019, 3:05 a.m.
On 2019/6/11 上午11:04, Douglas Royds wrote:
> On 11/06/19 2:46 PM, Kang Kai wrote:
>
>> On 2019/6/11 上午9:57, Douglas Royds via Openembedded-core wrote:
>>> Upstream json-c haven't made a release since March 2018.
>>> Adopt the current HEAD revision, pulling it directly from git.
>>>
>>> icecc preprocesses source files locally before shipping them off to 
>>> be compiled
>>> on remote hosts. This preprocessing removes comments, including /* 
>>> fallthough */
>>> comments in switch statements that normally prevent an 
>>> implicit-fallthrough
>>> warning, see https://github.com/icecc/icecream/issues/419
>>>
>>> Rather than turning off -Werror by patching configure.ac, the 
>>> upstream project
>>> has implemented a configure option, --disable-werror, in response to 
>>> Ross's
>>> https://github.com/json-c/json-c/issues/489
>>>
>>> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
>>> ---
>>>   meta/recipes-devtools/json-c/json-c_0.13.1.bb | 30 
>>> -------------------
>>>   meta/recipes-devtools/json-c/json-c_git.bb    | 19 ++++++++++++
>>
>> Use option '-M' of git format-patch may make the patch more clear. 
>> And why not just backport the 'disable-werror' commit?
>
>
> Re '-M': True, fair point.
>
> Re the backport: There hasn't been a release in over a year, they 
> don't seem to have any plans to do so (see 
> https://github.com/json-c/json-c/issues/487), and this was easier. If 
> you have a substantial objection, yes, I could submit it again with a 
> patch instead of the update.

Just consider footprint, git repo will take more space than tar ball. 
But no substantial objection.

Kai

>
>
>>
>> Regards,
>> Kai
>>
>>
>>>   2 files changed, 19 insertions(+), 30 deletions(-)
>>>   delete mode 100644 meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>   create mode 100644 meta/recipes-devtools/json-c/json-c_git.bb
>>>
>>> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb 
>>> b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>> deleted file mode 100644
>>> index 5b10e68297..0000000000
>>> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>> +++ /dev/null
>>> @@ -1,30 +0,0 @@
>>> -SUMMARY = "C bindings for apps which will manipulate JSON data"
>>> -DESCRIPTION = "JSON-C implements a reference counting object model 
>>> that allows you to easily construct JSON objects in C."
>>> -HOMEPAGE = "https://github.com/json-c/json-c/wiki"
>>> -LICENSE = "MIT"
>>> -LIC_FILES_CHKSUM = 
>>> "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
>>> -
>>> -SRC_URI = 
>>> "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
>>> -SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
>>> -SRC_URI[sha256sum] = 
>>> "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
>>> -
>>> -UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
>>> -# json-c releases page is fetching the list of releases in some 
>>> weird XML format
>>> -# from https://s3.amazonaws.com/json-c_releases and processes it 
>>> with javascript :-/
>>> -#UPSTREAM_CHECK_URI = 
>>> "https://s3.amazonaws.com/json-c_releases/releases/index.html"
>>> -RECIPE_UPSTREAM_VERSION = "0.13.1"
>>> -RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
>>> -CHECK_DATE = "May 02, 2018"
>>> -
>>> -RPROVIDES_${PN} = "libjson"
>>> -
>>> -inherit autotools
>>> -
>>> -EXTRA_OECONF = "--enable-rdrand"
>>> -
>>> -do_configure_prepend() {
>>> -    # Clean up autoconf cruft that should not be in the tarball
>>> -    rm -f ${S}/config.status
>>> -}
>>> -
>>> -BBCLASSEXTEND = "native nativesdk"
>>> diff --git a/meta/recipes-devtools/json-c/json-c_git.bb 
>>> b/meta/recipes-devtools/json-c/json-c_git.bb
>>> new file mode 100644
>>> index 0000000000..07daa5ba11
>>> --- /dev/null
>>> +++ b/meta/recipes-devtools/json-c/json-c_git.bb
>>> @@ -0,0 +1,19 @@
>>> +SUMMARY = "C bindings for apps which will manipulate JSON data"
>>> +DESCRIPTION = "JSON-C implements a reference counting object model 
>>> that allows you to easily construct JSON objects in C."
>>> +HOMEPAGE = "https://github.com/json-c/json-c/wiki"
>>> +LICENSE = "MIT"
>>> +LIC_FILES_CHKSUM = 
>>> "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
>>> +
>>> +SRC_URI = "git://github.com/json-c/json-c.git"
>>> +SRCREV = "07ea04e65193c3e5c902c5b79421d5fa48ff67c7"
>>> +S = "${WORKDIR}/git"
>>> +
>>> +RPROVIDES_${PN} = "libjson"
>>> +
>>> +inherit autotools
>>> +
>>> +EXTRA_OECONF = "--disable-werror \
>>> +                --enable-rdrand \
>>> +                "
>>> +
>>> +BBCLASSEXTEND = "native nativesdk"
>>
>>
>
>
Andrii Bordunov via Openembedded-core June 11, 2019, 3:12 a.m.
On 11/06/19 3:05 PM, Kang Kai wrote:

> On 2019/6/11 上午11:04, Douglas Royds wrote:
>> On 11/06/19 2:46 PM, Kang Kai wrote:
>>
>>> On 2019/6/11 上午9:57, Douglas Royds via Openembedded-core wrote:
>>>> Upstream json-c haven't made a release since March 2018.
>>>> Adopt the current HEAD revision, pulling it directly from git.
>>>>
>>>> icecc preprocesses source files locally before shipping them off to 
>>>> be compiled
>>>> on remote hosts. This preprocessing removes comments, including /* 
>>>> fallthough */
>>>> comments in switch statements that normally prevent an 
>>>> implicit-fallthrough
>>>> warning, see https://github.com/icecc/icecream/issues/419
>>>>
>>>> Rather than turning off -Werror by patching configure.ac, the 
>>>> upstream project
>>>> has implemented a configure option, --disable-werror, in response 
>>>> to Ross's
>>>> https://github.com/json-c/json-c/issues/489
>>>>
>>>> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
>>>> ---
>>>>   meta/recipes-devtools/json-c/json-c_0.13.1.bb | 30 
>>>> -------------------
>>>>   meta/recipes-devtools/json-c/json-c_git.bb    | 19 ++++++++++++
>>>
>>> Use option '-M' of git format-patch may make the patch more clear. 
>>> And why not just backport the 'disable-werror' commit?
>>
>>
>> Re '-M': True, fair point.
>>
>> Re the backport: There hasn't been a release in over a year, they 
>> don't seem to have any plans to do so (see 
>> https://github.com/json-c/json-c/issues/487), and this was easier. If 
>> you have a substantial objection, yes, I could submit it again with a 
>> patch instead of the update.
>
> Just consider footprint, git repo will take more space than tar ball. 
> But no substantial objection.


We do also lose the RECIPE_UPSTREAM_VERSION functionality by switching 
to the git HEAD, ie. there'll be no notification when they do 
(eventually) release a new version.

I'm in two minds. Opinions?


>
> Kai
>
>>
>>
>>>
>>> Regards,
>>> Kai
>>>
>>>
>>>>   2 files changed, 19 insertions(+), 30 deletions(-)
>>>>   delete mode 100644 meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>>   create mode 100644 meta/recipes-devtools/json-c/json-c_git.bb
>>>>
>>>> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb 
>>>> b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>> deleted file mode 100644
>>>> index 5b10e68297..0000000000
>>>> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>> +++ /dev/null
>>>> @@ -1,30 +0,0 @@
>>>> -SUMMARY = "C bindings for apps which will manipulate JSON data"
>>>> -DESCRIPTION = "JSON-C implements a reference counting object model 
>>>> that allows you to easily construct JSON objects in C."
>>>> -HOMEPAGE = "https://github.com/json-c/json-c/wiki"
>>>> -LICENSE = "MIT"
>>>> -LIC_FILES_CHKSUM = 
>>>> "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
>>>> -
>>>> -SRC_URI = 
>>>> "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
>>>> -SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
>>>> -SRC_URI[sha256sum] = 
>>>> "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
>>>> -
>>>> -UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
>>>> -# json-c releases page is fetching the list of releases in some 
>>>> weird XML format
>>>> -# from https://s3.amazonaws.com/json-c_releases and processes it 
>>>> with javascript :-/
>>>> -#UPSTREAM_CHECK_URI = 
>>>> "https://s3.amazonaws.com/json-c_releases/releases/index.html"
>>>> -RECIPE_UPSTREAM_VERSION = "0.13.1"
>>>> -RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
>>>> -CHECK_DATE = "May 02, 2018"
>>>> -
>>>> -RPROVIDES_${PN} = "libjson"
>>>> -
>>>> -inherit autotools
>>>> -
>>>> -EXTRA_OECONF = "--enable-rdrand"
>>>> -
>>>> -do_configure_prepend() {
>>>> -    # Clean up autoconf cruft that should not be in the tarball
>>>> -    rm -f ${S}/config.status
>>>> -}
>>>> -
>>>> -BBCLASSEXTEND = "native nativesdk"
>>>> diff --git a/meta/recipes-devtools/json-c/json-c_git.bb 
>>>> b/meta/recipes-devtools/json-c/json-c_git.bb
>>>> new file mode 100644
>>>> index 0000000000..07daa5ba11
>>>> --- /dev/null
>>>> +++ b/meta/recipes-devtools/json-c/json-c_git.bb
>>>> @@ -0,0 +1,19 @@
>>>> +SUMMARY = "C bindings for apps which will manipulate JSON data"
>>>> +DESCRIPTION = "JSON-C implements a reference counting object model 
>>>> that allows you to easily construct JSON objects in C."
>>>> +HOMEPAGE = "https://github.com/json-c/json-c/wiki"
>>>> +LICENSE = "MIT"
>>>> +LIC_FILES_CHKSUM = 
>>>> "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
>>>> +
>>>> +SRC_URI = "git://github.com/json-c/json-c.git"
>>>> +SRCREV = "07ea04e65193c3e5c902c5b79421d5fa48ff67c7"
>>>> +S = "${WORKDIR}/git"
>>>> +
>>>> +RPROVIDES_${PN} = "libjson"
>>>> +
>>>> +inherit autotools
>>>> +
>>>> +EXTRA_OECONF = "--disable-werror \
>>>> +                --enable-rdrand \
>>>> +                "
>>>> +
>>>> +BBCLASSEXTEND = "native nativesdk"
>>>
>>>
>>
>>
>
Adrian Bunk June 11, 2019, 4:57 a.m.
On Tue, Jun 11, 2019 at 03:12:09PM +1200, Douglas Royds via Openembedded-core wrote:
> On 11/06/19 3:05 PM, Kang Kai wrote:
> 
> > On 2019/6/11 上午11:04, Douglas Royds wrote:
> > > On 11/06/19 2:46 PM, Kang Kai wrote:
>...
> > > > Use option '-M' of git format-patch may make the patch more
> > > > clear. And why not just backport the 'disable-werror' commit?
> > > 
> > > 
> > > Re '-M': True, fair point.
> > > 
> > > Re the backport: There hasn't been a release in over a year, they
> > > don't seem to have any plans to do so (see
> > > https://github.com/json-c/json-c/issues/487), and this was easier.
> > > If you have a substantial objection, yes, I could submit it again
> > > with a patch instead of the update.
> > 
> > Just consider footprint, git repo will take more space than tar ball.
> > But no substantial objection.
> 
> 
> We do also lose the RECIPE_UPSTREAM_VERSION functionality by switching to
> the git HEAD, ie. there'll be no notification when they do (eventually)
> release a new version.
> 
> I'm in two minds. Opinions?

The biggest worry is actually whether some random git snapshot is as 
stable as a release.

Unless there is a good reason why a git snapshot is better than
release plus backported patch, the default should be to not switch
to using a git snapshot.

Starting to follow git snapshots brings the risk of frequent regressions 
since it follows the latest upstream development.

cu
Adrian
Andrii Bordunov via Openembedded-core June 11, 2019, 5:22 a.m.
On 11/06/19 4:57 PM, Adrian Bunk wrote:

> On Tue, Jun 11, 2019 at 03:12:09PM +1200, Douglas Royds via Openembedded-core wrote:
>> On 11/06/19 3:05 PM, Kang Kai wrote:
>>
>>> On 2019/6/11 上午11:04, Douglas Royds wrote:
>>>> On 11/06/19 2:46 PM, Kang Kai wrote:
>> ...
>>>>> Use option '-M' of git format-patch may make the patch more
>>>>> clear. And why not just backport the 'disable-werror' commit?
>>>>
>>>> Re '-M': True, fair point.
>>>>
>>>> Re the backport: There hasn't been a release in over a year, they
>>>> don't seem to have any plans to do so (see
>>>> https://github.com/json-c/json-c/issues/487), and this was easier.
>>>> If you have a substantial objection, yes, I could submit it again
>>>> with a patch instead of the update.
>>> Just consider footprint, git repo will take more space than tar ball.
>>> But no substantial objection.
>>
>> We do also lose the RECIPE_UPSTREAM_VERSION functionality by switching to
>> the git HEAD, ie. there'll be no notification when they do (eventually)
>> release a new version.
>>
>> I'm in two minds. Opinions?
> The biggest worry is actually whether some random git snapshot is as
> stable as a release.
>
> Unless there is a good reason why a git snapshot is better than
> release plus backported patch, the default should be to not switch
> to using a git snapshot.
>
> Starting to follow git snapshots brings the risk of frequent regressions
> since it follows the latest upstream development.


Fair enough, patch it is. Watch this space.
Martin Jansa June 11, 2019, 5:38 a.m.
Also the version went from 0.13.2 to 1.0 which doesn't match with the
sources. Don't forget to set PV when migrating recipes to use git fetcher.

On Tue, Jun 11, 2019 at 3:58 AM Douglas Royds via Openembedded-core <
openembedded-core@lists.openembedded.org> wrote:

> Upstream json-c haven't made a release since March 2018.
> Adopt the current HEAD revision, pulling it directly from git.
>
> icecc preprocesses source files locally before shipping them off to be
> compiled
> on remote hosts. This preprocessing removes comments, including /*
> fallthough */
> comments in switch statements that normally prevent an implicit-fallthrough
> warning, see https://github.com/icecc/icecream/issues/419
>
> Rather than turning off -Werror by patching configure.ac, the upstream
> project
> has implemented a configure option, --disable-werror, in response to Ross's
> https://github.com/json-c/json-c/issues/489
>
> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
> ---
>  meta/recipes-devtools/json-c/json-c_0.13.1.bb | 30 -------------------
>  meta/recipes-devtools/json-c/json-c_git.bb    | 19 ++++++++++++
>  2 files changed, 19 insertions(+), 30 deletions(-)
>  delete mode 100644 meta/recipes-devtools/json-c/json-c_0.13.1.bb
>  create mode 100644 meta/recipes-devtools/json-c/json-c_git.bb
>
> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> deleted file mode 100644
> index 5b10e68297..0000000000
> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> +++ /dev/null
> @@ -1,30 +0,0 @@
> -SUMMARY = "C bindings for apps which will manipulate JSON data"
> -DESCRIPTION = "JSON-C implements a reference counting object model that
> allows you to easily construct JSON objects in C."
> -HOMEPAGE = "https://github.com/json-c/json-c/wiki"
> -LICENSE = "MIT"
> -LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
> -
> -SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz
> "
> -SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
> -SRC_URI[sha256sum] =
> "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
> -
> -UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
> -# json-c releases page is fetching the list of releases in some weird XML
> format
> -# from https://s3.amazonaws.com/json-c_releases and processes it with
> javascript :-/
> -#UPSTREAM_CHECK_URI = "
> https://s3.amazonaws.com/json-c_releases/releases/index.html"
> -RECIPE_UPSTREAM_VERSION = "0.13.1"
> -RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
> -CHECK_DATE = "May 02, 2018"
> -
> -RPROVIDES_${PN} = "libjson"
> -
> -inherit autotools
> -
> -EXTRA_OECONF = "--enable-rdrand"
> -
> -do_configure_prepend() {
> -    # Clean up autoconf cruft that should not be in the tarball
> -    rm -f ${S}/config.status
> -}
> -
> -BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-devtools/json-c/json-c_git.bb
> b/meta/recipes-devtools/json-c/json-c_git.bb
> new file mode 100644
> index 0000000000..07daa5ba11
> --- /dev/null
> +++ b/meta/recipes-devtools/json-c/json-c_git.bb
> @@ -0,0 +1,19 @@
> +SUMMARY = "C bindings for apps which will manipulate JSON data"
> +DESCRIPTION = "JSON-C implements a reference counting object model that
> allows you to easily construct JSON objects in C."
> +HOMEPAGE = "https://github.com/json-c/json-c/wiki"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
> +
> +SRC_URI = "git://github.com/json-c/json-c.git"
> +SRCREV = "07ea04e65193c3e5c902c5b79421d5fa48ff67c7"
> +S = "${WORKDIR}/git"
> +
> +RPROVIDES_${PN} = "libjson"
> +
> +inherit autotools
> +
> +EXTRA_OECONF = "--disable-werror \
> +                --enable-rdrand \
> +                "
> +
> +BBCLASSEXTEND = "native nativesdk"
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
Alexander Kanavin June 11, 2019, 9:54 a.m.
On Tue, 11 Jun 2019 at 03:58, Douglas Royds via Openembedded-core <
openembedded-core@lists.openembedded.org> wrote:

> Upstream json-c haven't made a release since March 2018.
> Adopt the current HEAD revision, pulling it directly from git.
>

You should ask the upstream to make a new version then. Pulling a random
git commit is the wrong thing to do.

Alex