DevelGit » History » Revision 18
« Previous |
Revision 18/20
(diff)
| Next »
gstrauss, 2021-07-14 06:56
git source browser¶
View source code in the lighttpd 1.4 git repository
git source checkout¶
read-only: $ git clone https://git.lighttpd.net/lighttpd/lighttpd1.4.git
developer: $ git clone git+ssh://git@lighttpd.net/lighttpd/lighttpd1.4.git
build prerequisites¶
lighttpd supports multiple build frameworks: automake, cmake, meson, and scons.
Ensure you have installed the latest development tools and packages available, e.g. for automake:- autoconf
- automake
- libtool
- m4
- pcre-devel / libpcre3-dev
- pkg-config
- openssl
- gnutls
- mbedtls
- nss
- wolfssl
Further details can be found in lighttpd INSTALL (Please read)
build commands (examples)¶
automake
git clone https://git.lighttpd.net/lighttpd/lighttpd1.4.git cd lighttpd1.4 ./autogen.sh ./configure -C --prefix=/usr/local make -j 4 make check #sudo make install
cmake
git clone https://git.lighttpd.net/lighttpd/lighttpd1.4.git cd lighttpd1.4 cmake -DCMAKE_INSTALL_PREFIX=/usr/local -Wno-dev . make -j 4 make test #sudo make install
meson
git clone https://git.lighttpd.net/lighttpd/lighttpd1.4.git cd lighttpd1.4 meson setup --prefix /usr/local build cd build meson compile meson test #sudo meson install
scons
git clone https://git.lighttpd.net/lighttpd/lighttpd1.4.git cd lighttpd1.4 scons -j 4 build_static=1 build_dynamic=0 prefix=/usr/local #sudo scons -j 4 build_static=1 build_dynamic=0 prefix=/usr/local install
Examples commands for more fully-featured builds might reference lighttpd scripts/ci-build.sh
Also, there are more options for running unit tests
distro packaging (external examples)¶
Debian: debian/control
Fedora: lighttpd.spec
OpenWRT: net/lighttpd/Makefile
running lighttpd from build tree¶
lighttpd can be run from the build tree, without needing to install it. This is useful for testing. In the shell in which you built lighttpd, chdir to the top of the source tree (if not already there).
Create a basic lighttpd.conf to listen on localhost port 8080 and serve files from /tmp
(not recommended for production use!):
server.document-root = "/tmp" server.bind = "127.0.0.1" server.port = 8080 mimetype.assign = (".txt" => "text/plain", ".html" => "text/html" )
Create a simple file to serve:
echo "Hello World!" > /tmp/hello.txt
Run lighttpd in the foreground:
src/lighttpd -D -f lighttpd.conf -m $PWD/src/.libs
In a different shell:
curl http://127.0.0.1:8080/hello.txt
In the shell running lighttpd, press press
Ctrl-C
to cause lighttpd to exit.
Updated by gstrauss over 3 years ago · 18 revisions