Igor Sysoev
ddde9c23cf
Initial proxy support.
2019-11-14 16:39:54 +03:00
Valentin Bartenev
cc82547782
Respecting AR environment variable to configure ar binary.
2019-11-07 19:53:25 +03:00
Max Romanov
ad518ae6c4
Python: fixing Python 3.8 build with clang.
...
Python 3.8 has 'tp_print' field in PyTypeObject struct. This field is
attributed as deprecated. So, clang generates warning (which is turned to
error) as a result of initializing this field. From the other hand, it is
impossible to omit this field in positional initialization. The solution
is to use designated initializer.
Silencing usage message during configure python.
This is related to #331 issue on GitHub.
2019-10-23 14:04:29 +03:00
Max Romanov
e54f5f3dc8
Python: fixing build for Python 3.8.
...
Thanks to tonyafanasyev.
This is related to #331 issue on GitHub.
2019-10-22 16:04:30 +03:00
Max Romanov
9b4e45cafc
Fixed "make tests" build without preceding "make".
...
Currently almost all Unit object files depends on generated nxt_version.h.
This patch adds missing dependence and fixes running make with multiple
jobs.
This closes #318 issue on GitHub.
2019-10-02 19:11:10 +03:00
Valentin Bartenev
08a8d1510d
Basic support for serving static files.
2019-09-19 02:47:09 +03:00
Tiago de Bem Natel de Moura
c554941b4f
Initial applications isolation support using Linux namespaces.
2019-09-19 15:25:23 +03:00
Max Romanov
2b8cab1e24
Java: introducing websocket support.
2019-09-05 15:27:32 +03:00
Max Romanov
5d4426ed65
Installing libunit files for websocket support.
2019-08-23 01:19:57 +03:00
Max Romanov
e501c74ddc
Introducing websocket support in router and libunit.
2019-08-20 16:31:53 +03:00
Valentin Bartenev
242dc363ce
Perl: propagated compile options from perl build.
...
Some Perl compile options affects ABI and not using them while compiling
our module resulted in non-working build.
Notably on 32-bit Debian 10, Perl is built with -D_FILE_OFFSET_BITS=64
and our module after being compiled without this option caused segmentation
faults in unexpected places.
2019-07-17 21:17:30 +03:00
Valentin Bartenev
dbce694d5a
Perl: removed "--include=" configure option.
...
It's surplus option because the perl executable returns the proper path.
Also the Perl module configure script was cleaned up a bit.
Note that NXT_PERL_LDOPTS already contains the library path.
2019-07-17 21:17:30 +03:00
Max Romanov
6eba5ddd42
Java: added java module in configure help.
2019-05-30 15:02:10 +03:00
Max Romanov
5bfdebb9e4
Introducing Java Servlet Container beta.
2019-02-28 18:02:42 +03:00
Valentin Bartenev
5c9fe8c306
Added trailing zero to version string.
...
While it looks nicer without zero 3-rd version number, this should
improve interoperability. Version string can be parsed or used for
sorting. And it is easier to handle and less confusing when there
is constant number of version parts.
Moreover, NPM also expects version format with 3 parts.
So ".0" has already been used in Node.js module version.
2019-02-27 17:25:28 +03:00
Igor Sysoev
d4ccaae900
Initial routing implementation.
2019-02-27 16:41:11 +03:00
Alexander Borisov
608e09e9de
Improvement and unification of version processing in build scripts.
...
This also eliminates expressions that incompatible with BSD make, thus fixing
installation of Node.js module on FreeBSD (broken by dace60fc4926).
2019-02-22 16:31:44 +03:00
Alexander Borisov
2bc8fb7b43
Node.js: fixed module version on installation from sources.
2019-01-23 17:47:53 +03:00
Alexander Borisov
2677bd5604
Go: fixed module installation, broken in ed8b1aaefdd1.
...
Added the nxt_unit_version.h dependency.
This closes #214 issue on GitHub.
2019-01-21 18:13:00 +03:00
Alexander Borisov
d6f38a3268
Node.js: added check for libunit version at compile time.
2018-12-19 15:56:57 +03:00
Alexander Borisov
c55f329ecf
libunit: added generation of version header file.
2018-12-19 15:56:54 +03:00
Valentin Bartenev
f51f95fa54
Node.js: fixed global install in some cases.
...
By default "npm install" switches to non-privileged user to run package scripts
if it is invoked by root. As a result it may prevent node-gyp from writing to
package directory and break installation of the module.
To disable this switching the --unsafe-perm flag is added.
2018-12-12 19:54:52 +03:00
Valentin Bartenev
d500e29f88
Ruby: rpath made optional.
...
In most cases it is not needed because Ruby libraries are in the default path.
At the same time, rpath pointing to the default path is prohibited by rpmbuild
on Fedora.
This is related to issue #87 on GitHub.
2018-12-04 17:18:00 +03:00
Valentin Bartenev
262578dc71
PHP: workaround for bug #71041 .
...
Since PHP 7, a zend_signal_startup() call is required if the interpreter
was built with ZEND_SIGNALS defined; such a call was added in 3fd76e4ce70a.
However, the zend_signal_startup() export is missing from the PHP library;
as the result, dlopen() fails with the 'Undefined symbol "zend_signal_startup"'
error while loading the PHP module.
Meanwhile, if PHP is built without ZTS, the zend_signal_startup() call can
be omitted; otherwise, the missing call causes segmentation fault.
The PHP fix already was committed to upstream, but we still have to deal
with numerous unpatched versions remaining at large.
See the related PHP bug: https://bugs.php.net/bug.php?id=71041
2018-11-22 20:23:43 +03:00
Valentin Bartenev
adf22b6a0d
PHP: fixed compatibility with ZTS.
...
This closes #184 issue on GitHub.
2018-11-21 18:22:19 +03:00
Valentin Bartenev
39cd4a9dee
Prettier ./configure summary.
2018-11-15 21:50:00 +03:00
Valentin Bartenev
c1fd6cb589
Added TLS information to ./configure summary.
2018-11-15 20:08:46 +03:00
Valentin Bartenev
ed8bfc669f
Node.js: reworked installation procedure.
...
Now by default "make install" installs the module globally.
The "--local" configure option added for local installation.
2018-11-14 20:12:47 +03:00
Valentin Bartenev
0b558b873a
Node.js: ./configure script cleanup.
2018-11-14 20:01:34 +03:00
Sergey Kandaurov
7a06fab9e3
Mention of "nodejs" configure option in help.
2018-11-01 17:02:46 +03:00
Valentin Bartenev
6cc4080af2
Removed unused "--upstream" command line option.
2018-10-23 18:55:16 +03:00
Alexander Borisov
0ee8de5543
Fixed Makefile target for NodeJS.
2018-10-18 13:38:30 +03:00
Max Romanov
49ec17b1ef
Installing libunit headers and static library.
2018-10-17 15:52:44 +03:00
Valentin Bartenev
029c1a9f50
Renamed "go" application type to "external".
...
There's nothing specific to Go language. This type of application object can
be used to run any external application that utilizes libunit API.
2018-10-09 17:53:31 +03:00
Alexander Borisov
ea62327b00
Added Node.js support.
2018-10-03 17:50:03 +03:00
Valentin Bartenev
db1e01d992
Mention of --openssl configure option in help.
...
This closes #171 issue on GitHub.
Thanks to 洪志道 (Hong Zhi Dao).
2018-10-01 15:06:31 +03:00
Sergey Kandaurov
e4650b7412
Fixed building perl on Alpine Linux.
...
_GNU_SOURCE is required there to expose off64_t and other types.
2018-09-20 16:34:19 +03:00
Valentin Bartenev
8d844bc2aa
Controller: certificates storage interface.
2018-09-20 15:27:08 +03:00
Igor Sysoev
96cd68b340
Added SSL/TLS support on connection level.
2018-09-20 15:05:37 +03:00
Igor Sysoev
4bb4525031
Removed deprecated MacOSX OSSpinLockLock().
2018-09-17 16:37:17 +03:00
Valentin Bartenev
4bc7a23ecf
Fixed spelling in a comment.
...
This closes #161 issue on GitHub.
Thanks to 洪志道 (Hong Zhi Dao).
2018-09-10 14:55:15 +03:00
Valentin Bartenev
941616f893
Returning error for "make tests" when "--tests" wasn't configured.
2018-08-08 18:43:46 +03:00
Max Romanov
1bb22d1e92
Unit application library.
...
Library now used in all language modules.
Old 'nxt_app_*' code removed.
See src/test/nxt_unit_app_test.c for usage sample.
2018-08-06 17:27:33 +03:00
Igor Sysoev
7e41f9d108
Refactored thread ID functions.
...
nxt_thread_tid() was moved to src/nxt_thread.c
nxt_thread_get_tid() was moved to src/nxt_thread_id.h.
src/nxt_thread_id.c was removed.
2018-07-27 16:53:26 +03:00
Sergey Kandaurov
7c5a710c55
Added getentropy() support.
...
Prodded by David Carlier.
2018-07-16 13:30:11 +03:00
Sergey Kandaurov
bf1cb8f399
Supplied getrandom() test with commentary about supported OSes.
2018-07-16 13:17:49 +03:00
Igor Sysoev
313da403a5
Removed -mmacosx-version-min option.
2018-06-28 18:31:27 +03:00
Igor Sysoev
61df281464
Added check of "make install" ability.
...
This closes #136 issue on GitHub.
2018-06-28 17:36:42 +03:00
Valentin Bartenev
42e1d8e3b2
Packages: tar building functionality moved into pkg/Makefile.
2018-06-27 18:30:49 +03:00
Sergey Kandaurov
14bc401394
Using own popcount where the compiler builtin is not available.
2018-06-20 19:34:06 +03:00
Sergey Kandaurov
50d4587961
Using portable grep features.
2018-06-20 19:33:49 +03:00
Max Romanov
6157a599f2
Using 'all' as default target in Makefile.
2018-06-19 17:23:01 +03:00
Igor Sysoev
e54fb892a4
PHP: fixed building on MacOSX with --ld-opt= option.
2018-05-30 18:31:26 +03:00
Max Romanov
38e40fa857
PHP: using generated dependencies in makefile.
2018-05-30 18:19:39 +03:00
Sergey Kandaurov
a9ea218e7e
Using getrandom() libc interface, SYS_getrandom fixes.
...
The interface is available since Glibc 2.25, and FreeBSD 12.0.
2018-05-24 20:35:47 +03:00
Valentin Bartenev
3e8dbfe5ff
Added SERVER_SOFTWARE request meta-variable.
2018-05-21 16:14:24 +03:00
Sergey Kandaurov
7f79f2f105
Enabled exporting symbols for OpenBSD.
2018-04-15 19:44:38 +03:00
Valentin Bartenev
07b554c2b4
Configure scripts cleanup.
...
Thanks to 洪志道 (Hong Zhi Dao).
2018-04-11 18:29:48 +03:00
Alexander Borisov
49bd3a21e0
Changed version processing for modules.
2018-04-04 18:53:39 +03:00
sshaw
9cd4b2bff2
Ruby: correctly getting version from RbConfig::CONFIG.
...
This closes #90 PR on GitHub.
2018-04-02 18:05:34 +03:00
Igor Sysoev
baf63dfe74
Aligned macosx-version-min flag for test and build environments.
...
The flag has been misaligned in the changeset 4979fe09d9cd.
2018-03-28 19:07:32 +03:00
Alexander Borisov
37051b6c15
Added Ruby support.
2018-03-21 16:50:07 +03:00
Sergey Kandaurov
4f712e3fd0
Added support for shm_open(SHM_ANON) extension.
2018-03-06 13:55:51 +00:00
Andrei Belov
7830026368
Perl: use ExtUtils::Embed in configure.
2018-02-07 17:26:30 +03:00
Alexander Borisov
960962ddce
Added Perl support.
2018-01-31 15:47:00 +03:00
Igor Sysoev
a35732bf05
PHP: "--lib-static" option uses "--lib-path" option.
2018-01-15 15:05:22 +03:00
Igor Sysoev
c9ae198016
PHP: added "--lib-static" configure option.
...
The libraries returned by "php-config --libs" are required to link with
static libphp.a. Dynamic libphp.so contains the required libraries names.
2018-01-12 18:15:58 +03:00
Igor Sysoev
c105988e51
Fixed DragonFly BSD shared memory implementation.
2018-01-11 17:13:58 +03:00
Igor Sysoev
f7bc2e1560
Using hg archive instead of copying to make distribution tarball.
2018-01-11 09:54:35 +03:00
Igor Sysoev
9a6d3c5775
HTTP keep-alive connections support.
2017-12-28 16:01:06 +03:00
Sergey Kandaurov
cdfdbc43eb
Enabled exporting symbols for NetBSD.
2017-12-26 17:55:48 +03:00
Max Romanov
4e403c17da
Introducing --lib-path options for Python module linkage.
...
This option is useful when python-config does not setup path to libpython,
which is non standard.
2017-12-15 14:06:15 +03:00
Max Romanov
40eb1f8b9b
Making Go package source distributable and renaming to 'nginx/unit'.
...
All header files are copied to Go package sources. As the result,
package can be (re-)build when required.
This closes #23 issue on GitHub.
2017-12-01 16:57:30 +03:00
Max Romanov
630ec3f1ec
Using compiler capability to generate dependencies.
...
This closes #58 issue on GitHub.
2017-12-01 16:28:06 +03:00
Max Romanov
1add36a7ee
Using --ld-opt when linking modules.
2017-11-29 18:49:08 +03:00
Andrey Zelenkov
78a77c3e38
Tests: move existing tests to "src" folder.
2017-11-21 18:55:28 +03:00
Igor Sysoev
9f9a708ed1
Using the single source of Unit version.
2017-10-20 17:52:04 +03:00
Igor Sysoev
2837d520bb
Version bump.
2017-10-20 17:48:38 +03:00
Valentin Bartenev
096562c0b1
Improved applications versions handling.
2017-10-05 16:46:18 +03:00
Sergey Kandaurov
9213299d1f
Supported linking with -lrt on BSD systems.
...
OpenBSD lacks support of librt.
2017-09-27 18:34:23 +03:00
Sergey Kandaurov
aac0f06f3d
Better checking for shm_open() during configure.
2017-09-27 18:34:23 +03:00
Igor Sysoev
4f4647e187
Fixed "make dist" broken in changeset b18c0fb60032.
2017-09-27 18:34:15 +03:00
Valentin Bartenev
d18113ab66
Changed "path" to "directory" in configure summary.
...
The "directory" is more specific term, similar to "file".
2017-09-26 17:53:21 +03:00
Igor Sysoev
5635c259f9
Added state directory creation in install procedure.
2017-09-25 20:15:34 +03:00
Igor Sysoev
d04f030d1a
Added --bindir and --sbindir options to the summary page.
2017-09-25 20:15:33 +03:00
Igor Sysoev
6b0a3aed22
Style fixes.
2017-09-25 18:04:11 +03:00
Max Romanov
2ae0449262
Checking mallopt() during configure.
...
mallopt() is absent on Alpine musl.
2017-09-25 17:53:10 +03:00
Igor Sysoev
8e2fd89634
Fixed displaying "echo" program building failure.
2017-09-22 20:13:55 +03:00
Valentin Bartenev
45c1d41f34
Removed fibers from compilation.
...
It's not used anyway, but breaks building with musl.
This closes issue #5 on GitHub.
2017-09-22 16:42:42 +03:00
Valentin Bartenev
4953e5b5cb
Configuration persistence.
...
Now configuration survives server reloads.
2017-09-10 06:22:15 +03:00
Max Romanov
789a101e99
Decalring clean and dist targets as .PHONY.
2017-09-07 16:38:05 -07:00
Igor Sysoev
89df39374c
Added the dist target in Makefile.
2017-09-06 19:23:50 +03:00
Igor Sysoev
58907888e5
Style fixes.
2017-09-06 02:30:55 +03:00
Andrei Belov
db6d2b9687
Fixed permissions for Go sources.
...
In particular, it resolves a number of errors and warnings
reported by rpmlint(1).
2017-09-04 19:09:34 +03:00
Igor Sysoev
1f95673713
Setting build directory with variable instead of configure option.
2017-08-31 21:44:30 +03:00
Max Romanov
ac7218e335
Introducing install & uninstall Makefile targets.
2017-08-31 11:42:13 -07:00
Sergey Kandaurov
db85a9a015
Go: fixed splitting recipe line with newer gmake.
...
Use double quotes to quote a string with the backslash/newline pair.
Newer gmake versions, such as GNU Make 4.1, do not remove the backslash
from a string quoted with single quotes, which results in an extraneous
backslash passed to the shell and, eventually, to the Go compiler.
2017-08-31 18:21:22 +03:00
Igor Sysoev
738ca54ded
Changed modules names format.
2017-08-31 00:42:16 +03:00
Igor Sysoev
f0e9e3ace9
nginext has been renamed to unit.
2017-08-31 00:42:16 +03:00
Igor Sysoev
3f10b05de9
Moving generating CGO header file to the make stage.
2017-08-31 00:42:08 +03:00