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
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
Alexander Borisov
0ee8de5543
Fixed Makefile target for NodeJS.
2018-10-18 13:38:30 +03:00
Alexander Borisov
ea62327b00
Added Node.js support.
2018-10-03 17:50:03 +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
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
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
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
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
Alexander Borisov
37051b6c15
Added Ruby support.
2018-03-21 16:50:07 +03: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
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
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
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
Max Romanov
92f3b85298
The process type enum exposed to go module.
2017-08-29 14:18:00 -07:00
Max Romanov
5b879f0e2b
Using NXT_GO variable instead of explicit go.
2017-08-29 11:37:49 -07:00
Max Romanov
52ae0e69c1
Store and use NXT_LIBRT for go module.
2017-08-29 11:33:35 -07:00
Max Romanov
73dc76b0bf
Separation of module prerequisites for 'all' target in Makefile.
...
To avoid using sed -i.
2017-08-29 11:33:34 -07:00
Igor Sysoev
93f7104a65
Added configure and command line option --help.
2017-08-26 13:37:44 +03:00
Igor Sysoev
949548da29
The new module configuration interface.
...
Configuration and building example:
./configure
./configure python
./configure php
./configure go
make all
or
./configure
make nginext
./configure python
make python
./configure php
make php
./configure go
make go
Modules configuration options and building examples:
./configure python --module=python2 --config=python2.7-config
make python2
./configure php --module=php7 --config=php7.0-config
--lib-path=/usr/local/php7.0
make php7
./configure go --go=go1.6 --go-path=${HOME}/go1.6
make go1.6
2017-08-17 21:47:19 +03:00
Igor Sysoev
5ef8e0ee89
Removing auto/modules directory before commiting the new module
...
configuration infrastructure.
2017-08-17 21:47:19 +03:00
Igor Sysoev
e62840cd54
Introducing configure option --with-php-ldflags=.
2017-08-04 08:21:22 +03:00
Max Romanov
a7ef8481fc
Added make target 'golang-nginext-install' to install precompiled go package.
2017-08-02 13:01:54 +03:00
Igor Sysoev
145eeb8476
Improved PHP configure test.
2017-07-26 12:17:41 +03:00
Igor Sysoev
237bd6b1c2
Improved Python configure test.
2017-07-26 12:17:32 +03:00
Igor Sysoev
740382e36e
Improved Go configure test.
2017-07-26 12:17:27 +03:00
Igor Sysoev
d218c5f7b4
Updated Go configure test.
2017-07-25 20:29:02 +03:00