X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2FMakefile;h=0d5f1e16c0cd4bedafbe3584cee5fa7cbeac5d6b;hb=765ebfc0b57ea5ddcd5079fce261c05c1eeb0f65;hp=ca072a536e5b95ad5e74242925d10d911031f64a;hpb=86d3143560d546c7f7df78f67dc633a574d68397;p=protos%2Flibecoli.git diff --git a/lib/Makefile b/lib/Makefile index ca072a5..0d5f1e1 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -1,28 +1,5 @@ -# +# SPDX-License-Identifier: BSD-3-Clause # Copyright 2016, Olivier MATZ -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the University of California, Berkeley nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ECOLI ?= $(abspath ..) include $(ECOLI)/mk/ecoli-pre.mk @@ -30,14 +7,53 @@ include $(ECOLI)/mk/ecoli-pre.mk # output path with trailing slash O ?= build/ -CFLAGS = -g -O0 -Wall -Werror -W -fPIC +# XXX -O0 +CFLAGS = -g -O0 -Wall -Werror -W -Wextra -fPIC -Wmissing-prototypes CFLAGS += -I. -srcs := ecoli_tk.c ecoli_malloc.c ecoli_log.c ecoli_strvec.c -srcs += ecoli_keyval.c ecoli_test.c -srcs += ecoli_tk_str.c ecoli_tk_seq.c ecoli_tk_space.c ecoli_tk_or.c -srcs += ecoli_tk_empty.c ecoli_tk_int.c ecoli_tk_option.c ecoli_tk_many.c -srcs += ecoli_tk_sh_lex.c ecoli_tk_expr.c ecoli_tk_weakref.c ecoli_tk_re_lex.c +# XXX coverage +CFLAGS += --coverage +LDFLAGS += --coverage +# rm -rf build; rm -rf result; make && ./build/test +# lcov -d build -c -t build/test -o test.info && genhtml -o result test.info + + +srcs := +srcs += ecoli_assert.c +srcs += ecoli_complete.c +srcs += ecoli_config.c +srcs += ecoli_keyval.c +srcs += ecoli_init.c +srcs += ecoli_log.c +srcs += ecoli_malloc.c +srcs += ecoli_murmurhash.c +srcs += ecoli_strvec.c +srcs += ecoli_test.c +srcs += ecoli_node.c +srcs += ecoli_node_any.c +srcs += ecoli_node_cmd.c +srcs += ecoli_node_empty.c +srcs += ecoli_node_expr.c +srcs += ecoli_node_expr_test.c +srcs += ecoli_node_dynamic.c +srcs += ecoli_node_file.c +srcs += ecoli_node_int.c +srcs += ecoli_node_many.c +srcs += ecoli_node_none.c +srcs += ecoli_node_once.c +srcs += ecoli_node_option.c +srcs += ecoli_node_or.c +srcs += ecoli_node_re.c +srcs += ecoli_node_re_lex.c +srcs += ecoli_node_seq.c +srcs += ecoli_node_sh_lex.c +srcs += ecoli_node_space.c +srcs += ecoli_node_str.c +srcs += ecoli_node_subset.c +srcs += ecoli_parse.c +srcs += ecoli_string.c +srcs += ecoli_vec.c + shlib-y-$(O)libecoli.so := $(srcs) ldflags-$(O)test = -rdynamic