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