Hello, On 03/14/2012 09:50 AM, Balazs Scheidler wrote:
I ran into one more interesting thing: with json-c enabled in "make config", configure failed with:
configure: error: Cannot find json-c version>= 0.9: is pkg-config in path?
When disabled json-c in "make config" it was found by configure and was built. The relevant part of "Makefile" is:
.if defined(WITH_JSON_GLIB) LIB_DEPENDS+= json-glib-1.0.0:${PORTSDIR}/devel/json-glib CONFIGURE_ARGS+= --enable-json --with-json=json-glib PLIST_FILES+= lib/syslog-ng/libtfjson.la lib/syslog-ng/libtfjson.so .elif defined(WITH_JSON_C) LIB_DEPENDS+= json.0:${PORTSDIR}/devel/json-c CONFIGURE_ARGS+= --enable-json --with-json=json-c PLIST_FILES+= lib/syslog-ng/libtfjson.la lib/syslog-ng/libtfjson.so .else CONFIGURE_ARGS+= --disable-json .endif
So, in theory json support was disabled... hmm.. there's no such switch as --enable-json, although I'd tend to agree that this is confusing. The reason is that we support two json implementations and that's usually specified using --with-json=<xxx>, and once that is supplied --enable-json is not needed. OK, I fixed the ports Makefile. Still, when I enable json-c in make conf, it fails with the above error.
So to disable json support you'd need to use --without-json, but suggestions how this should work is appreciated. "--with-json=none" would be a nice pair to "auto". It would be nice, if it could be explicitly disabled, as if json is available on the system, it's automagically used. So if it's there as a dependency of another software and later deleted, it would render syslog-ng unusable due to missing dependencies. Bye,
-- Peter Czanik (CzP)<czanik@balabit.hu> BalaBit IT Security / syslog-ng upstream http://czanik.blogs.balabit.com/