1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Chapter 2. Creating a New Berkeley DB Binary</title>
<link rel="stylesheet" href="gettingStarted.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
<link rel="start" href="index.html" title="Porting Berkeley DB" />
<link rel="up" href="index.html" title="Porting Berkeley DB" />
<link rel="prev" href="portprocess.html" title="Berkeley DB Porting Process" />
<link rel="next" href="modscope.html" title="Determining the Scope of the Modifications" />
</head>
<body>
<div xmlns="" class="navheader">
<div class="libver">
<p>Library Version 11.2.5.3</p>
</div>
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">Chapter 2. Creating a New Berkeley DB Binary</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="portprocess.html">Prev</a> </td>
<th width="60%" align="center"> </th>
<td width="20%" align="right"> <a accesskey="n" href="modscope.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="chapter" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title"><a id="newbinary"></a>Chapter 2. Creating a New Berkeley DB Binary</h2>
</div>
</div>
</div>
<div class="toc">
<p>
<b>Table of Contents</b>
</p>
<dl>
<dt>
<span class="sect1">
<a href="newbinary.html#basebuild">
Creating a Base Build of Berkeley DB
</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="modscope.html">
Determining the Scope of the Modifications
</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="modscope.html#osfunc">
Do Changes Need to be Made to the Operating System Functionality?
</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="modscope.html#standardfunc">Are Some Standard Functions Missing on the Target Platform?</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="modscope.html#sharedmem">How Will the Port Handle Shared Memory?</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="modscope.html#typemutex">What Type of Mutexes Will the Port Use?</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="modscope.html#otherchanges">Do Any Other Changes Need to be Made?</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="buildtarget.html"> Building on the Target Platform</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="layout.html">Source Code Layout</a>
</span>
</dt>
</dl>
</div>
<p>
Creating a new Berkeley DB executable on the target platform, involves:
</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>
<a class="xref" href="newbinary.html#basebuild" title="Creating a Base Build of Berkeley DB">
Creating a Base Build of Berkeley DB
</a>
</p>
</li>
<li>
<p>
<a class="xref" href="modscope.html" title="Determining the Scope of the Modifications">
Determining the Scope of the Modifications
</a>
</p>
</li>
<li>
<p>
<a class="xref" href="buildtarget.html" title="Building on the Target Platform"> Building on the Target Platform</a>
</p>
</li>
</ol>
</div>
<div class="sect1" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title" style="clear: both"><a id="basebuild"></a>
Creating a Base Build of Berkeley DB
</h2>
</div>
</div>
</div>
<p>
The simplest way to begin a port is to attempt to configure and build Berkeley DB on a UNIX or UNIX-like system. This gives you a list of the files that you needed to build Berkeley DB as well as the configuration files you can use as a starting point for building on your target port.
</p>
<p>
To create a base build of Berkeley DB, following the instructions in the
<em class="citetitle">Berkeley DB Programmer's Reference Guide</em>:
</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>
Download a Berkeley DB distribution from <a class="ulink" href="http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html" target="_top">http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html</a>.
</p>
</li>
<li>
<p>
Build Berkeley DB.
</p>
</li>
</ol>
</div>
<p>Berkeley DB uses the GNU autoconf tools for configuration on almost all of
the platforms it supports. Specifically, the include file
<code class="filename">db_config.h</code> configures the Berkeley DB build. The simplest way to
begin a port is to configure and build Berkeley DB on a UNIX or UNIX-like
system, and then take the <code class="filename">Makefile</code> and <code class="filename">db_config.h</code>
file created by that configuration, and modify it by hand to reflect
the needs of the new architecture. Unless you are already familiar with
the GNU autoconf toolset, we do not recommend you take the time to
integrate your changes back into the Berkeley DB autoconfiguration framework.
Instead, send us context diffs of your changes and any new source files
you created, and we can integrate the changes into our source tree.</p>
</div>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="portprocess.html">Prev</a> </td>
<td width="20%" align="center"> </td>
<td width="40%" align="right"> <a accesskey="n" href="modscope.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Berkeley DB Porting Process </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top">
Determining the Scope of the Modifications
</td>
</tr>
</table>
</div>
</body>
</html>
|