aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/build-unix.md10
-rw-r--r--doc/coding.md57
-rw-r--r--doc/gitian-building.md21
-rw-r--r--doc/release-process.md19
4 files changed, 74 insertions, 33 deletions
diff --git a/doc/build-unix.md b/doc/build-unix.md
index b957baa91c..d08c327ff9 100644
--- a/doc/build-unix.md
+++ b/doc/build-unix.md
@@ -42,15 +42,7 @@ Licenses of statically linked libraries:
Boost MIT-like license
miniupnpc New (3-clause) BSD license
-- Versions used in this release:
-- GCC 4.3.3
-- OpenSSL 1.0.1c
-- Berkeley DB 4.8.30.NC
-- Boost 1.55
-- miniupnpc 1.6
-- qt 4.8.3
-- protobuf 2.5.0
-- libqrencode 3.2.0
+- For the versions used in this release, see doc/release-process.md under *Fetch and build inputs*.
System requirements
--------------------
diff --git a/doc/coding.md b/doc/coding.md
index ab3a73494a..69388c9ce2 100644
--- a/doc/coding.md
+++ b/doc/coding.md
@@ -43,8 +43,61 @@ Common types:
set set or multiset
bn CBigNum
--------------------------
+Doxygen comments
+-----------------
+
+To facilitate the generation of documentation, use doxygen-compatible comment blocks for functions, methods and fields.
+
+For example, to describe a function use:
+```c++
+/**
+ * ... text ...
+ * @param[in] arg1 A description
+ * @param[in] arg2 Another argument description
+ * @pre Precondition for function...
+ */
+bool function(int arg1, const char *arg2)
+```
+A complete list of `@xxx` commands can be found at http://www.stack.nl/~dimitri/doxygen/manual/commands.html.
+As Doxygen recognizes the comments by the delimiters (`/**` and `*/` in this case), you don't
+*need* to provide any commands for a comment to be valid, just a description text is fine.
+
+To describe a class use the same construct above the class definition:
+```c++
+/**
+ * Alerts are for notifying old versions if they become too obsolete and
+ * need to upgrade. The message is displayed in the status bar.
+ * @see GetWarnings()
+ */
+class CAlert
+{
+```
+
+To describe a member or variable use:
+```c++
+int var; //!< Detailed description after the member
+```
+
+Also OK:
+```c++
+///
+/// ... text ...
+///
+bool function2(int arg1, const char *arg2)
+```
+
+Not OK (used plenty in the current source, but not picked up):
+```c++
+//
+// ... text ...
+//
+```
+
+A full list of comment syntaxes picked up by doxygen can be found at http://www.stack.nl/~dimitri/doxygen/manual/docblocks.html,
+but if possible use one of the above styles.
+
Locking/mutex usage notes
+-------------------------
The code is multi-threaded, and uses mutexes and the
LOCK/TRY_LOCK macros to protect data structures.
@@ -60,8 +113,8 @@ between the various components is a goal, with any necessary locking
done by the components (e.g. see the self-contained CKeyStore class
and its cs_KeyStore lock for example).
--------
Threads
+-------
- ThreadScriptCheck : Verifies block scripts.
diff --git a/doc/gitian-building.md b/doc/gitian-building.md
index 9fef66b764..23059a0506 100644
--- a/doc/gitian-building.md
+++ b/doc/gitian-building.md
@@ -49,7 +49,7 @@ on actual hardware instead of using a VM, in this case you can skip this section
In the VirtualBox GUI click "Create" and choose the following parameters in the wizard:
-![](gitian-building/create_vm_page1.png =100x20)
+![](gitian-building/create_vm_page1.png)
- Type: Linux, Debian (64 bit)
@@ -346,25 +346,6 @@ tail -f var/install.log
tail -f var/build.log
```
-To make sure that the output is exactly the same, and that the time, date, locale and
-even the ordering of files in the file system doesn't influence the result,
-some special precautions are taken. This means that the result is expected to
-be the same every time. The expected SHA256 hashes of the intermediate
-inputs (at the time of release 0.9.0) are:
-
- 05fe8e9aef00d295f24a94deef7d3a918af5aeef371ba57fdd5a6acd8c51f6cb bitcoin-deps-linux32-gitian-r3.zip
- 4227aa9d9fedbb4265b8d10a4f78b7435f34b00a54eb4d662bf78f59c6e70c27 bitcoin-deps-linux64-gitian-r3.zip
- f29b7d9577417333fb56e023c2977f5726a7c297f320b175a4108cf7cd4c2d29 boost-linux32-1.55.0-gitian-r1.zip
- 88232451c4104f7eb16e469ac6474fd1231bd485687253f7b2bdf46c0781d535 boost-linux64-1.55.0-gitian-r1.zip
- 60dc2d3b61e9c7d5dbe2f90d5955772ad748a47918ff2d8b74e8db9b1b91c909 boost-win32-1.55.0-gitian-r6.zip
- f65fcaf346bc7b73bc8db3a8614f4f6bee2f61fcbe495e9881133a7c2612a167 boost-win64-1.55.0-gitian-r6.zip
- 0ba0855e1084132d05fd8687c19d8430b91f6c410a9ab7938e4fea650c2b22c8 bitcoin-deps-win32-gitian-r10.zip
- 5f9ffba0c13ddefc1d339f66ab973ea64623c9cc1f9078cb2b145bce86bd28e2 bitcoin-deps-win64-gitian-r10.zip
- 963e3e5e85879010a91143c90a711a5d1d5aba992e38672cdf7b54e42c56b2f1 qt-win32-5.2.0-gitian-r2.zip
- 751c579830d173ef3e6f194e83d18b92ebef6df03289db13ab77a52b6bc86ef0 qt-win64-5.2.0-gitian-r2.zip
- e2e403e1a08869c7eed4d4293bce13d51ec6a63592918b90ae215a0eceb44cb4 protobuf-win32-2.5.0-gitian-r4.zip
- a0999037e8b0ef9ade13efd88fee261ba401f5ca910068b7e0cd3262ba667db0 protobuf-win64-2.5.0-gitian-r4.zip
-
Building Bitcoin
----------------
diff --git a/doc/release-process.md b/doc/release-process.md
index 095d20f9ea..bf289805ca 100644
--- a/doc/release-process.md
+++ b/doc/release-process.md
@@ -39,8 +39,8 @@ Release Process
Fetch and build inputs: (first time, or when dependency versions change)
mkdir -p inputs; cd inputs/
- wget 'http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.8.tar.gz' -O miniupnpc-1.8.tar.gz
- wget 'https://www.openssl.org/source/openssl-1.0.1e.tar.gz'
+ wget 'http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.9.tar.gz' -O miniupnpc-1.9.tar.gz
+ wget 'https://www.openssl.org/source/openssl-1.0.1g.tar.gz'
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
wget 'http://zlib.net/zlib-1.2.8.tar.gz'
wget 'ftp://ftp.simplesystems.org/pub/png/src/history/libpng16/libpng-1.6.8.tar.gz'
@@ -64,6 +64,21 @@ Release Process
./bin/gbuild ../bitcoin/contrib/gitian-descriptors/protobuf-win.yml
mv build/out/protobuf-*.zip inputs/
+ The expected SHA256 hashes of the intermediate inputs are:
+
+ 35c3dfd8b9362f59e81b51881b295232e3bc9e286f1add193b59d486d9ac4a5c bitcoin-deps-linux32-gitian-r5.zip
+ 571789867d172500fa96d63d0ba8c5b1e1a3d6f44f720eddf2f93665affc88b3 bitcoin-deps-linux64-gitian-r5.zip
+ f29b7d9577417333fb56e023c2977f5726a7c297f320b175a4108cf7cd4c2d29 boost-linux32-1.55.0-gitian-r1.zip
+ 88232451c4104f7eb16e469ac6474fd1231bd485687253f7b2bdf46c0781d535 boost-linux64-1.55.0-gitian-r1.zip
+ 60dc2d3b61e9c7d5dbe2f90d5955772ad748a47918ff2d8b74e8db9b1b91c909 boost-win32-1.55.0-gitian-r6.zip
+ f65fcaf346bc7b73bc8db3a8614f4f6bee2f61fcbe495e9881133a7c2612a167 boost-win64-1.55.0-gitian-r6.zip
+ 97e62002d338885336bb24e7cbb9471491294bd8857af7a83d18c0961f864ec0 bitcoin-deps-win32-gitian-r11.zip
+ ee3ea2d5aac1a67ea6bfbea2c04068a7c0940616ce48ee4f37c264bb9d4438ef bitcoin-deps-win64-gitian-r11.zip
+ 963e3e5e85879010a91143c90a711a5d1d5aba992e38672cdf7b54e42c56b2f1 qt-win32-5.2.0-gitian-r3.zip
+ 751c579830d173ef3e6f194e83d18b92ebef6df03289db13ab77a52b6bc86ef0 qt-win64-5.2.0-gitian-r3.zip
+ e2e403e1a08869c7eed4d4293bce13d51ec6a63592918b90ae215a0eceb44cb4 protobuf-win32-2.5.0-gitian-r4.zip
+ a0999037e8b0ef9ade13efd88fee261ba401f5ca910068b7e0cd3262ba667db0 protobuf-win64-2.5.0-gitian-r4.zip
+
Build bitcoind and bitcoin-qt on Linux32, Linux64, and Win32:
./bin/gbuild --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml