1 # Makefile for 4.4BSD db code in GNU C library.
2 # This code is taken verbatim from the BSD db 1.85 package. Only this
3 # Makefile and compat.h were written for GNU libc, and the header files
4 # moved up to this directory.
8 subdir-dirs
= btree db hash mpool recno
9 vpath
%.c
$(subdir-dirs
)
12 extra-libs-others
:= $(extra-libs
)
13 libdb1-routines
:= bt_close bt_conv bt_debug bt_delete bt_get \
14 bt_open bt_overflow bt_page bt_put bt_search \
15 bt_seq bt_split bt_utils \
17 hash hash_bigkey hash_buf hash_func hash_log2 hash_page \
20 rec_close rec_delete rec_get rec_open rec_put rec_search \
23 db1-headers
:= db.h mpool.h ndbm.h
24 distribute
:= compat.h \
25 btree
/btree.h btree
/extern.h \
26 hash
/extern.h hash
/hash.h hash
/page.h \
27 recno
/extern.h recno
/recno.h \
32 install-others
:= $(db1-headers
:%=$(inst_includedir
)/db1
/%)
34 ifeq (yes
,$(build-shared
))
35 install-others
+= $(inst_slibdir
)/libdb.so
$(libdb1.so-version
)
38 $(inst_slibdir
)/libdb.so
$(libdb1.so-version
): $(inst_slibdir
)/libdb1-
$(version
).so
$(+force)
42 $(db1-headers
:%=$(inst_includedir
)/db1
/%): $(inst_includedir
)/db1
/%: % $(+force)
47 CPPFLAGS
+= -D__DBINTERFACE_PRIVATE
-DUSE_LIBDB1
49 # This file defines some static functions for alternative hash algorithms
50 # that are not actually used.
51 CFLAGS-hash_func.c
:= -Wno-unused
53 # The db code outsmarts the compiler frequently.
54 override CFLAGS
+= -Wno-uninitialized
56 # Force the soname to be libdb.so for compatibility.
57 LDFLAGS-db1.so
= -Wl
,-soname
=lib
$(libprefix
)db.so
$($(@F
)-version
)
59 # Depend on libc.so so a DT_NEEDED is generated in the shared objects.
60 # This ensures they will load libc.so for needed symbols if loaded by
61 # a statically-linked program that hasn't already loaded it.
62 $(objpfx
)libdb1.so
: $(objpfx
)libdb1_pic.a
$(+preinit
) $(+postinit
) $(+interp
) \
63 $(common-objpfx
)libc.so
65 #subdir_install: $(inst_libdir)/libndbm.a
66 #$(inst_libdir)/libndbm.a: $(inst_libdir)/libdb1.a $(+force)
69 #ifeq ($(build-shared),yes)
70 #subdir_install: $(inst_libdir)/libndbm.so
71 #$(inst_libdir)/libndbm.so: $(inst_libdir)/libdb1.so $(+force)