xref: /illumos-gate/usr/src/lib/libsqlite/Makefile.com (revision 9b9d39d2a32ff806d2431dbcc50968ef1e6d46b2)
1c5c4113dSnw141292#
2dc20a302Sas200622# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
3c5c4113dSnw141292# Use is subject to license terms.
47b07063dSIgor Kozhukhov# Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com>
526649ed7SGordon Ross# Copyright 2016 Nexenta Systems, Inc.  All rights reserved.
63eca6103SJohn Levon# Copyright (c) 2019, Joyent, Inc.
7856f710cSAndy Fiddaman# Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
8c5c4113dSnw141292#
9c5c4113dSnw141292
1091d7f85eSGordon Ross# Make the SO name unlikely to conflict with any other
1191d7f85eSGordon Ross# libsqlite that might also be found on the system.
1291d7f85eSGordon RossLIBRARY = libsqlite-sys.a
13c5c4113dSnw141292
1491d7f85eSGordon RossVERS = .2.8.15
15c5c4113dSnw141292OBJECTS = \
16c5c4113dSnw141292	attach.o	\
17c5c4113dSnw141292	auth.o		\
18c5c4113dSnw141292	btree.o		\
19c5c4113dSnw141292	btree_rb.o	\
20c5c4113dSnw141292	build.o		\
21c5c4113dSnw141292	copy.o		\
22c5c4113dSnw141292	date.o		\
23c5c4113dSnw141292	delete.o	\
24c5c4113dSnw141292	encode.o	\
25c5c4113dSnw141292	expr.o		\
26c5c4113dSnw141292	func.o		\
27c5c4113dSnw141292	hash.o		\
28c5c4113dSnw141292	insert.o	\
29c5c4113dSnw141292	main.o		\
30c5c4113dSnw141292	opcodes.o	\
31c5c4113dSnw141292	os.o		\
32c5c4113dSnw141292	pager.o		\
33c5c4113dSnw141292	parse.o		\
34c5c4113dSnw141292	pragma.o	\
35c5c4113dSnw141292	printf.o	\
36c5c4113dSnw141292	random.o	\
37c5c4113dSnw141292	select.o	\
38c5c4113dSnw141292	table.o		\
39c5c4113dSnw141292	tokenize.o	\
40c5c4113dSnw141292	trigger.o	\
41c5c4113dSnw141292	update.o	\
42c5c4113dSnw141292	util.o		\
43c5c4113dSnw141292	vacuum.o	\
44c5c4113dSnw141292	vdbe.o		\
45c5c4113dSnw141292	vdbeaux.o	\
46c5c4113dSnw141292	where.o
47c5c4113dSnw141292
48c5c4113dSnw141292include $(SRC)/lib/Makefile.lib
49c5c4113dSnw141292
5091d7f85eSGordon Ross# install this library in the root filesystem
5191d7f85eSGordon Rossinclude $(SRC)/lib/Makefile.rootfs
528f954993Samw
53c5c4113dSnw141292SRCDIR = ../src
54c5c4113dSnw141292TOOLDIR = ../tool
55dc20a302Sas200622$(DYNLIB) := LDLIBS += -lc
56c5c4113dSnw141292
57*9b9d39d2SRichard LoweLIBS = $(DYNLIB)
58c5c4113dSnw141292
5991d7f85eSGordon Ross# generated sources
6091d7f85eSGordon RossGENSRC = opcodes.c parse.c
6191d7f85eSGordon Ross
6291d7f85eSGordon Ross# all sources
63c5c4113dSnw141292SRCS = \
6491d7f85eSGordon Ross	$(GENSRC) \
65c5c4113dSnw141292	$(SRCDIR)/attach.c	\
66c5c4113dSnw141292	$(SRCDIR)/auth.c	\
67c5c4113dSnw141292	$(SRCDIR)/btree.c	\
68c5c4113dSnw141292	$(SRCDIR)/btree_rb.c	\
69c5c4113dSnw141292	$(SRCDIR)/build.c	\
70c5c4113dSnw141292	$(SRCDIR)/copy.c	\
71c5c4113dSnw141292	$(SRCDIR)/date.c	\
72c5c4113dSnw141292	$(SRCDIR)/delete.c	\
73c5c4113dSnw141292	$(SRCDIR)/encode.c	\
74c5c4113dSnw141292	$(SRCDIR)/expr.c	\
75c5c4113dSnw141292	$(SRCDIR)/func.c	\
76c5c4113dSnw141292	$(SRCDIR)/hash.c	\
77c5c4113dSnw141292	$(SRCDIR)/insert.c	\
78c5c4113dSnw141292	$(SRCDIR)/main.c	\
79c5c4113dSnw141292	$(SRCDIR)/os.c		\
80c5c4113dSnw141292	$(SRCDIR)/pager.c	\
81c5c4113dSnw141292	$(SRCDIR)/pragma.c	\
82c5c4113dSnw141292	$(SRCDIR)/printf.c	\
83c5c4113dSnw141292	$(SRCDIR)/random.c	\
84c5c4113dSnw141292	$(SRCDIR)/select.c	\
85c5c4113dSnw141292	$(SRCDIR)/table.c	\
86c5c4113dSnw141292	$(SRCDIR)/tokenize.c	\
87c5c4113dSnw141292	$(SRCDIR)/update.c	\
88c5c4113dSnw141292	$(SRCDIR)/util.c	\
89c5c4113dSnw141292	$(SRCDIR)/vacuum.c	\
90c5c4113dSnw141292	$(SRCDIR)/vdbe.c	\
91c5c4113dSnw141292	$(SRCDIR)/vdbeaux.c	\
92c5c4113dSnw141292	$(SRCDIR)/where.c	\
93c5c4113dSnw141292	$(SRCDIR)/trigger.c
94c5c4113dSnw141292
95c5c4113dSnw141292MYCPPFLAGS = -D_REENTRANT -DTHREADSAFE=1 -DHAVE_USLEEP=1 -I. -I.. -I$(SRCDIR)
96c5c4113dSnw141292CPPFLAGS += $(MYCPPFLAGS)
97c5c4113dSnw141292
987014882cSRichard LoweCERRWARN += -_gcc=-Wno-implicit-function-declaration
99d3b5f563SJohn LevonCERRWARN += $(CNOWARN_UNINIT)
1007014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-function
1017014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-label
1027014882cSRichard Lowe
10305ede3dbSJohn Levon# not linted
10405ede3dbSJohn LevonSMATCH=off
10505ede3dbSJohn Levon
106*9b9d39d2SRichard LoweMAPFILES = $(SRC)/lib/libsqlite/mapfile-sqlite
107c5c4113dSnw141292
10891d7f85eSGordon Ross# headers generated here
10991d7f85eSGordon RossGENHDR = opcodes.h parse.h
11091d7f85eSGordon Ross
111c5c4113dSnw141292# Header files used by all library source files.
112c5c4113dSnw141292#
113c5c4113dSnw141292HDR = \
11491d7f85eSGordon Ross	$(GENHDR) \
115c5c4113dSnw141292	$(SRCDIR)/btree.h	\
116c5c4113dSnw141292	$(SRCDIR)/config.h	\
117c5c4113dSnw141292	$(SRCDIR)/hash.h	\
118c5c4113dSnw141292	$(SRCDIR)/os.h		\
119c5c4113dSnw141292	../sqlite.h		\
120c5c4113dSnw141292	$(SRCDIR)/sqliteInt.h	\
121c5c4113dSnw141292	$(SRCDIR)/vdbe.h	\
122c5c4113dSnw141292	$(SRCDIR)/vdbeInt.h
123c5c4113dSnw141292
124c5c4113dSnw141292#
125c5c4113dSnw141292# Sources used for test harness
126c5c4113dSnw141292#
127c5c4113dSnw141292TESTSRC = \
128c5c4113dSnw141292	$(SRCDIR)/tclsqlite.c	\
129c5c4113dSnw141292	$(SRCDIR)/btree.c	\
130c5c4113dSnw141292	$(SRCDIR)/func.c	\
131c5c4113dSnw141292	$(SRCDIR)/os.c		\
132c5c4113dSnw141292	$(SRCDIR)/pager.c	\
133c5c4113dSnw141292	$(SRCDIR)/test1.c	\
134c5c4113dSnw141292	$(SRCDIR)/test2.c	\
135c5c4113dSnw141292	$(SRCDIR)/test3.c	\
136c5c4113dSnw141292	$(SRCDIR)/md5.c
137c5c4113dSnw141292
138c5c4113dSnw141292TESTOBJS = $(TESTSRC:$(SRCDIR)/%.c=%.o)
139c5c4113dSnw141292
140c5c4113dSnw141292TESTCLEAN = $(TESTOBJS) test.db test.tcl test1.bt test2.db testdb
141c5c4113dSnw141292
142c5c4113dSnw141292TCLBASE = /usr/sfw
143c5c4113dSnw141292TCLVERS = tcl8.3
144c5c4113dSnw141292
145c5c4113dSnw141292testfixture := MYCPPFLAGS += -I$(TCLBASE)/include -DTCLSH -DSQLITE_TEST=1
146c5c4113dSnw141292
147c5c4113dSnw141292testfixture := LDLIBS += -R$(TCLBASE)/lib -L$(TCLBASE)/lib -l$(TCLVERS) -lm -ldl
148c5c4113dSnw141292
149c5c4113dSnw141292CLEANFILES += \
150c5c4113dSnw141292	$(TESTCLEAN)	\
151c5c4113dSnw141292	lemon		\
152c5c4113dSnw141292	lemon.o		\
153c5c4113dSnw141292	lempar.c	\
154c5c4113dSnw141292	opcodes.c	\
155c5c4113dSnw141292	opcodes.h	\
156c5c4113dSnw141292	parse_tmp.c	\
157c5c4113dSnw141292	parse_tmp.h	\
158c5c4113dSnw141292	parse_tmp.out	\
159c5c4113dSnw141292	parse_tmp.y	\
160c5c4113dSnw141292	parse.c		\
161c5c4113dSnw141292	parse.h
162c5c4113dSnw141292
163c5c4113dSnw141292ENCODING  = ISO8859
164c5c4113dSnw141292
165*9b9d39d2SRichard Lowe.PARALLEL: $(OBJS) $(PICS)
166c5c4113dSnw141292.KEEP_STATE:
167c5c4113dSnw141292
168c5c4113dSnw141292# This is the default Makefile target.  The objects listed here
169c5c4113dSnw141292# are what get build when you type just "make" with no arguments.
170c5c4113dSnw141292#
171c5c4113dSnw141292all:		$(LIBS)
172*9b9d39d2SRichard Loweinstall:	all
17391d7f85eSGordon Ross
17491d7f85eSGordon Rossall_h: $(GENHDR)
17591d7f85eSGordon Ross
17691d7f85eSGordon Ross$(ROOTLINK): $(ROOTLIBDIR) $(ROOTLIBDIR)/$(DYNLIB)
1778f954993Samw	$(INS.liblink)
178