corrects build/dependency sections of README

This commit is contained in:
Joe Bryan 2019-01-15 13:22:47 -05:00
parent 4674945e97
commit 2a5757ab9d

View File

@ -25,24 +25,22 @@ If you're doing development on Urbit, keep reading.
- [libcurl](https://curl.haxx.se/libcurl/) - [libcurl](https://curl.haxx.se/libcurl/)
- [libuv](http://libuv.org) - [libuv](http://libuv.org)
- curses implementation (ncurses on Linux distributions, OS curses otherwise) - curses implementation (ncurses on Linux distributions, OS curses otherwise)
- [re2c](http://re2c.org)
Most of these dependencies are unfortunate; we aim to drastically shrink the Most of these dependencies are unfortunate; we aim to drastically shrink the
list in upcoming versions. `vere` proper makes use of GMP, OpenSSL, libcurl, and list in upcoming versions. `vere` proper makes use of GMP, OpenSSL, libcurl, and
libsigsegv. The multiple build tools are a result of bundled libraries, slated libsigsegv.
for future unbundling or removal wherever possible.
## Building ## Building
Urbit uses Meson build system. Urbit uses Meson build system.
Some libraries which are not found in major distributions: Some libraries which are not found in major distributions:
- ed25519 - ed25519
- http-parser legacy version 0.1.0 - libh2o
- murmur3 - murmur3
- softfloat3 - softfloat3
- urbit-scrypt - scrypt
- commonmark legacy version 0.12.0
are included as git submodules. To build urbit from source, perform the following steps: are included as git submodules. To build urbit from source, perform the following steps:
@ -65,6 +63,7 @@ To set a prefix for installation use
## Configuration & compilation for legacy meson ## Configuration & compilation for legacy meson
The syntax for legacy meson (Version `0.29`) is a bit different. The syntax for legacy meson (Version `0.29`) is a bit different.
1. Manually create `build` directory and invoke meson as `meson . ./build` 1. Manually create `build` directory and invoke meson as `meson . ./build`
2. If you want to set options, this is done in one step. 2. If you want to set options, this is done in one step.
Use `meson -D [options] . ./build` to prepare customized build. Use `meson -D [options] . ./build` to prepare customized build.
@ -73,28 +72,6 @@ Once the project is configured, use `ninja` to build it.
To install it into the default prefix, use `ninja install`. To install it into the default prefix, use `ninja install`.
If you want to specify custom `DESTDIR`, use `DESTDIR=... ninja install`. If you want to specify custom `DESTDIR`, use `DESTDIR=... ninja install`.
## Building the Debian Package
To build a .deb file for installation on Debian platforms, perform the
following steps:
+ Run `sudo apt install devscripts` to install the `debuild` utility.
+ Update the `debian/changelog` to reflect the changes in this release.
+ If necessary, update the year of the copyright in `debian/copyright`.
+ Clean any build artifacts: Run `make clean` and delete the `bin` directory,
if it exists.
+ Run `tar -xcvf ../urbit-x.y.z.orig.tar.gz .` from the top-level folder in
the repo. This command will create an archive in the directory above the
current directory, which will be used in packaging.
+ Run `debuild -us -uc`, also from the top-level folder in the repo. This
creates a .deb file in the folder above the current directory.
The resulting .deb file should now exist in the folder above the current
directory. To test that the .deb file works properly, you can perform the
following steps:
+ Uninstall urbit: `sudo apt remove urbit`.
+ Run `sudo dpkg -i ../urbit-x.y.z_amd64.deb` to install the new version.
+ Boot up a ship using the `urbit` command.
## Contact ## Contact
If you have any questions, problems, patches, or proposals for patches, please If you have any questions, problems, patches, or proposals for patches, please