parsav  Diff

Differences From Artifact [51cc28542c]:

To Artifact [5b41282a82]:


    25     25   clean:
    26     26   	rm parsav parsav.o $(images) $(styles)
    27     27   
    28     28   install: parsav
    29     29   	mkdir $(prefix)/bin
    30     30   	cp $< $(prefix)/bin/
    31     31   
    32         -dep: dep.mbedtls dep.mongoose dep.json-c
           32  +dep: dep.mbedtls dep.mongoose dep.mjson
    33     33   dep.mbedtls: lib/mbedtls/library/libmbedtls.a \
    34     34   	lib/mbedtls/library/libmbedcrypto.a \
    35     35   	lib/mbedtls/library/libmbedx509.a
    36     36   dep.mongoose: lib/mongoose/libmongoose.a
    37         -dep.json-c: lib/json-c/libjson-c.a
           37  +dep.mjson: lib/mjson/libmjson.a
    38     38   
    39         -static-libs = lib/json-c/libjson-c.a \
           39  +static-libs = lib/mjson/libmjson.a \
    40     40   		      lib/mongoose/libmongoose.a \
    41     41   		      lib/mbedtls/library/libmbedx509.a \
    42     42   		      lib/mbedtls/library/libmbedcrypto.a \
    43     43   		      lib/mbedtls/library/libmbedtls.a
    44     44   
    45     45   dist-kind ?= o
    46     46   parsav-dist = parsav-$(dist-kind)dist-$(version)
................................................................................
    49     49   	cp -u $^ $(parsav-dist)/
    50     50   	tar cf   $(parsav-dist){.tar,}
    51     51   	xz -c9e  $(parsav-dist).tar > $@
    52     52   	rm -r    $(parsav-dist){.tar,}
    53     53   
    54     54   lib:
    55     55   	mkdir $@
           56  +
           57  +lib%.a %.a: %.o
           58  +	ar rcs $@ $<
           59  +	ranlib $@ # bsd-ism
           60  +
    56     61   # generate a shim static library so mongoose cooperates
    57     62   # with the build apparatus. note that parsav is designed
    58     63   # to be fronted by a real web server like nginx if SSL
    59     64   # is to be used, so we don't turn on SSL in mongoose
    60         -lib/mongoose/libmongoose.a: lib/mongoose lib/mongoose/mongoose.c lib/mongoose/mongoose.h
    61         -	$(CC) -c $</mongoose.c -o lib/mongoose/mongoose.o \
           65  +lib/mongoose/mongoose.o: lib/mongoose/mongoose.c lib/mongoose/mongoose.h lib/mongoose
           66  +	$(CC) -c $< -o lib/mongoose/mongoose.o \
    62     67   		-DMG_ENABLE_THREADS=1 \
    63     68   		-DMG_ENABLE_IPV6=1 \
    64     69   		-DMG_ENABLE_HTTP_WEBDAV=1 \
    65     70   		-DMG_ENABLE_HTTP_WEBSOCKET=0
    66         -	ar rcs $@ lib/mongoose/*.o
    67         -	ranlib $@
    68     71   
    69         -lib/json-c/Makefile: lib/json-c lib/json-c/CMakeLists.txt
    70         -	cd $< && cmake .
    71         -lib/json-c/libjson-c.a: lib/json-c/Makefile
    72         -	$(MAKE) -C lib/json-c
           72  +lib/mjson/mjson.o: lib/mjson/src/mjson.c lib/mjson/src/mjson.h lib/mjson
           73  +	$(CC) -c $< -o lib/mjson/mjson.o \
           74  +		-DMJSON_MAX_DEPTH=16 \
           75  +		-DMJSON_ENABLE_BASE64=0 \
           76  +		-DMJSON_ENABLE_RPC=0
           77  +
    73     78   lib/mbedtls/library/%.a: lib/mbedtls 
    74     79   	$(MAKE) -C lib/mbedtls/library $*.a
    75     80   
    76     81   ifeq ($(dl), git)
    77     82   clone = git clone --depth 1 # save time
    78     83   ensurelib = mkdir -p lib && cd lib
    79     84   lib/mongoose: 
    80     85   	$(ensurelib) && $(clone) https://github.com/cesanta/mongoose.git
           86  +lib/mjson: 
           87  +	$(ensurelib) && $(clone) https://github.com/cesanta/mjson.git
    81     88   lib/mbedtls: 
    82     89   	$(ensurelib) && $(clone) https://github.com/ARMmbed/mbedtls.git
    83         -lib/json-c: 
    84         -	$(ensurelib) && $(clone) https://github.com/json-c/json-c.git
    85     90   else
    86     91   lib/%: lib/%.tar.gz
    87     92   	$(ensurelib) && tar zxf $*.tar.gz
    88     93   	mv lib/$$(tar tf $< | head -n1) $@
    89     94   
    90     95   ifeq ($(dl), wget)
    91     96       dlfile = mkdir -p $(dir $@) && wget "$1" -O "$@"
................................................................................
    93     98   
    94     99   ifeq ($(dl), curl)
    95    100       dlfile = mkdir -p $(dir $@) && curl "$1" -o "$@"
    96    101   endif
    97    102   
    98    103   lib/mongoose.tar.gz:
    99    104   	$(call dlfile,https://api.github.com/repos/cesanta/mongoose/tarball/master)
          105  +lib/mjson.tar.gz:
          106  +	$(call dlfile,https://api.github.com/repos/cesanta/mjson/tarball/master)
   100    107   lib/mbedtls.tar.gz:
   101    108   	$(call dlfile,https://api.github.com/repos/ARMmbed/mbedtls/tarball/master)
   102         -lib/json-c.tar.gz:
   103         -	$(call dlfile,https://api.github.com/repos/json-c/json-c/tarball/master)
   104    109   endif