[Buildroot] [PATCH] New package: cJSON (v2)

Peter Korsgaard jacmet at uclibc.org
Mon Jun 11 10:08:12 UTC 2012


>>>>> "Danomi" == Danomi Manchego <danomimanchego123 at gmail.com> writes:

 Danomi> Signed-off-by: Danomi Manchego <danomimanchego123 at gmail.com>
 Danomi> ---
 Danomi>  package/Config.in       |    1 +
 Danomi>  package/cjson/Config.in |    7 +++++++
 Danomi>  package/cjson/cjson.mk  |   41 +++++++++++++++++++++++++++++++++++++++++

 Danomi> +++ b/package/cjson/cjson.mk
 Danomi> @@ -0,0 +1,41 @@
 Danomi> +#############################################################
 Danomi> +#
 Danomi> +# cjson
 Danomi> +#
 Danomi> +#############################################################
 Danomi> +CJSON_VERSION         = undefined
 Danomi> +CJSON_SOURCE          = cJSONFiles.zip
 Danomi> +CJSON_SITE            = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/project/cjson/
 Danomi> +CJSON_INSTALL_STAGING = YES
 Danomi> +
 Danomi> +define CJSON_EXTRACT_CMDS
 Danomi> +	unzip -d $(@D) $(DL_DIR)/$(CJSON_SOURCE)
 Danomi> +endef
 Danomi> +
 Danomi> +define CJSON_BUILD_CMDS
 Danomi> +	cd $(@D)/cJSON && $(TARGET_CC) -Wall -O2 -shared -fpic cJSON.c -o libcJSON.so

I'm not sure it makes sense to build a .so of something as simple (and
unversioned) as this. How about just doing a static .a like ezxml? You
also shouldn't hardcode compiler flags like -Wall / -O2 but use
$(TARGET_CFLAGS) instead - E.G.

cd $(@D)/cJSON && $(TARGET_CC) $(TARGET_CFLAGS) -o cJSON.o cJSON.c
cd $(@D)/cJSON && $(TARGET_AR) rcs libcJSON.a cJSON.o



 Danomi> +endef
 Danomi> +
 Danomi> +define CJSON_INSTALL_STAGING_CMDS
 Danomi> +	$(INSTALL) -D $(@D)/cJSON/cJSON.h $(STAGING_DIR)/usr/include/cJSON.h
 Danomi> +	$(INSTALL) -D $(@D)/cJSON/libcJSON.so $(STAGING_DIR)/usr/lib/libcJSON.so
 Danomi> +endef
 Danomi> +
 Danomi> +define CJSON_INSTALL_TARGET_CMDS
 Danomi> +	$(INSTALL) -D $(@D)/cJSON/libcJSON.so $(TARGET_DIR)/usr/lib/libcJSON.so

You should also install the header file into TARGET_DIR. It will get
removed by target-finalize if it isn't needed.

Care to fix and resend?
 
-- 
Bye, Peter Korsgaard



More information about the buildroot mailing list