Commit Graph

255 Commits

Author SHA1 Message Date
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