Commit Graph

115 Commits

Author SHA1 Message Date
Alexey Sokolov
f80ae4aad6 Various fixes of modperl and modpython.
Including cygwin support #216
2012-08-27 00:40:11 +07:00
Alexey Sokolov
f94cb24fed Fix SSL on cygwin. 2012-08-20 00:32:36 +07:00
Alexey Sokolov
c050356a24 Generate modperl.tar.bz2 2012-08-08 01:29:18 +07:00
Alexey Sokolov
76e1d417f7 saslauth -> cyrusauth 2012-06-21 08:02:08 +07:00
Kyle Fuller
63ab3c099d Rename --enable-sasl to --enable-cyrus to help confusion
Many people think --enable-sasl was needed for the sasl module
2012-06-18 04:51:58 +01:00
Alexey Sokolov
7ac61474ed ZNC-Extra no more.
Few the most useless modules are just removed, the others are moved to
standard modules.
2012-02-21 19:34:36 +07:00
Alexey Sokolov
be81853b24 Depend on changes of headers too, not only sources. 2012-02-05 17:24:14 +07:00
Alexey Sokolov
897806a84b Don't rebuild modules during make install. 2012-01-23 04:10:02 +07:00
Alexey Sokolov
8af35e1fe5 Change the order of -I directives in Makefile.
If ZNC was already installed, it had its headers somewhere.
The chances are that something else can be installed at the same place,
including some ZNC's dependency	whose include dir would be included to
CXXFLAGS. Another possibility of including that dir is triggered when
using FreeBSD - ./configure explicitly adds -I/usr/local/include in that
case.

And so we get a directory with old ZNC headers included to CXXFLAGS
before our new shiny ./include.

With their order changed, the proper headers are included now.

Thanks to those who repored the issue, thanks to PsWii60 for helping to
track it down, thanks to my parents for creating me and therefore
enabling me to fix it, and to many other people.
2011-11-05 11:51:53 +07:00
Uli Schlachter
a08ec52dbf Don't use "mkdir" during install
lahwran just showed up on irc and told us that he installed znc, but znc failed
to find any modules. The reason for this was his umask 077 which means that
"make install" installed stuff so that only root can access it.

The solution is do use "install -d" since that makes sure to ignore the
currently set umask.

However, google finds results which say that "install -d" might mess with stuff
of pre-existing directories when it shouldn't, so we must first test if the
directory already exists before calling install. Obviously, this makes our
Makefile a lot more readable. :-(

I didn't have time to test this properly, so stuff might break.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-11-03 09:01:13 +01:00
Alexey Sokolov
f4097e6fd5 Separate compilation and linking for modules.
To gain more benefits from distcc.
2011-10-30 02:15:26 +07:00
Alexey Sokolov
e354c24ac1 Move ZNC headers into own directory.
Yes, this breaks backwards compatibility, so what?
It's already broken with network stuff anyway.
2011-09-23 03:31:58 +07:00
Uli Schlachter
013d0d2773 Drop @DEFS@ from the build system
This will only ever be set to -DHAVE_CONFIG_H. However, we shouldn't give this
flag to other people's code (e.g. through znc-config). Since we don't need it,
it's best to just drop it completely.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-09-02 18:21:50 +02:00
Kyle Fuller
e86ff3219d Fix module data for extra/ modules for real 2011-08-05 22:16:21 +01:00
Uli Schlachter
cb6798d36f Fix module data for extra/ modules
No module in extra/ comes with any data currently, so this was tested by moving
perform to extra/. The install is untested.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-08-05 15:19:09 +02:00
Alexey Sokolov
7d912d1d2d Check SWIG version in configure. 2011-05-06 15:17:30 +07:00
Alexey Sokolov
ba915eb9c4 Use pkg-config for modpython.
python3-config fails when python is installed not system-wide.
It doesn't return -L/path/to/libs.
pkg-config resurns it.

Note that this changes meaning of optional argument to ./configure --enable-python=...
2011-03-31 20:13:19 +07:00
Alexey Sokolov
076929bb50 Merge branch 'modulesdata'
Conflicts:
	modules/Makefile.in
2011-03-28 17:15:00 +07:00
Alexey Sokolov
9506d7e32b Fix copying modules data directories.
This fixes out-of-tree builds.
2011-03-06 20:50:22 +06:00
Alexey Sokolov
3a838d1493 Move module data files to own dir. 2011-03-06 12:32:14 +06:00
Alexey Sokolov
3d3235743d Fix permissions for modules's static data.
With cp -Rp, the files's permissions were just copied from source.
But 4c7808c5c broke that behaviour, so after copying we set permissions for new installed files.

Why "install" doesn't support installing directories? :(
2011-02-28 23:49:53 +06:00
Daniel Holbert
4c7808c5cb Remove unnecessary "-p" parameter from cp command in Makefiles, to fix checkinstall failure 2011-02-28 14:25:22 +13:00
Uli Schlachter
2dcf79cedc Move modtcl into modules/
If you did ./configure --enable-tcl, tcl wasn't actually enabled because
--enable-extra was missing, That's less than optimal.

Just moving modtcl out of modules/extra solves this problem.

Big thanks go to zynox/kylef for noticing this!

Signed-off-by: Uli Schlachter <psychon@znc.in>
2011-02-17 17:45:46 +01:00
psychon
3ecbf13390 Use autoheader
This commit adds a zncconfig.h to ZNC that is automatically generated by
configure. This is done because the -DPACKAGE_STRING=\"znc\ 0.097\" that
configure adds to CXXFLAGS breaks znc-buildmod.

This means that we have to include zncconfig.h as the very first header in every
C++ file that is compiled. This commit kinda cheats and instead adds this
include as the very first thing to all header files we have. This should
hopefully mean that modules don't have to include this.

Because Csocket includes defines.h too late, this commit causes znc to divert
from upstream Csocket once again. :(


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2250 726aef4b-f618-498e-8847-2d620e286838
2011-01-07 15:01:08 +00:00
psychon
8a1c2a4711 Include @DEFS@ into our compiler call
On most systems, this should only result in some useless defines being added to
the compiler's command line:

-DPACKAGE_NAME=\"znc\" -DPACKAGE_TARNAME=\"znc\" -DPACKAGE_VERSION=\"0.097\"
-DPACKAGE_STRING=\"znc\ 0.097\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\"

However, on some weird arches like e.g. x86, this will make AC_SYS_LARGEFILE
actually work, because that macro adds "-D_FILE_OFFSET_BITS=64" to @DEPS@.

This was found by SilverLeo because modpython didn't compile for him, thanks. :)
(python has "#define _FILE_OFFSET_BITS 64" in pyconfig.h)

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2242 726aef4b-f618-498e-8847-2d620e286838
2011-01-02 17:15:21 +00:00
darthgandalf
4be057200b Fix out-of-tree builds.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2223 726aef4b-f618-498e-8847-2d620e286838
2010-12-30 22:40:24 +00:00
darthgandalf
afa16df2bc Fix make clean for modperl and modpython
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2220 726aef4b-f618-498e-8847-2d620e286838
2010-12-30 19:18:24 +00:00
darthgandalf
d2e5a2416c Fix disabling of modperl, modpython.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2210 726aef4b-f618-498e-8847-2d620e286838
2010-12-24 19:29:44 +00:00
psychon
40632f46d0 Split up modules/Makefile.in
This splits the modpython, modperl and modtcl specific parts of
modules/Makefile.in into separate files. There shouldn't be any other changes
than this in here (hopefully).


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2209 726aef4b-f618-498e-8847-2d620e286838
2010-12-24 18:30:11 +00:00
darthgandalf
517307b96a Remove verbosity from pyc files of Makefile.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2207 726aef4b-f618-498e-8847-2d620e286838
2010-12-24 16:23:15 +00:00
darthgandalf
d21a1be74a Fix some dependencies of Makefile
Thanks for zynox for finding this

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2205 726aef4b-f618-498e-8847-2d620e286838
2010-12-24 15:30:19 +00:00
psychon
0cc8bebd2b Various fixes for our Makefiles
- Make sure webskins are installed with the correct permissions even though we
  don't use install for installing them.
- Make "make uninstall" use the correct path for webskins.
- Properly clean up the stuff generated by modperl and modpython on "make clean"
- Don't first install modperl/ and modpython/ only to remove them again later
- Use $(wildcard) to expand *.foo to the empty string if nothing matches.


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2201 726aef4b-f618-498e-8847-2d620e286838
2010-12-23 14:15:49 +00:00
darthgandalf
18234a9445 Fix ignoring of fails in Makefile.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2200 726aef4b-f618-498e-8847-2d620e286838
2010-12-23 10:33:42 +00:00
psychon
936b434dbb Add some -Wno flags to modpython
This is now enough that it builds for me! :)


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2199 726aef4b-f618-498e-8847-2d620e286838
2010-12-23 10:24:35 +00:00
darthgandalf
aee8763c5d modpython/codegen.pl had wrong permissions
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2197 726aef4b-f618-498e-8847-2d620e286838
2010-12-23 01:35:56 +00:00
darthgandalf
a564e25c13 Add modpython module which allows to write ZNC modules on python3.
Notice for distro maintainers: perl interpreter is required to compile modpython.

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2196 726aef4b-f618-498e-8847-2d620e286838
2010-12-22 14:52:53 +00:00
darthgandalf
c7c0d1714c Change internal way of making Makefile to know if need to compile modperl or not.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2195 726aef4b-f618-498e-8847-2d620e286838
2010-12-22 14:51:49 +00:00
darthgandalf
df34098eee Fix out-of-tree builds for modperl.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2193 726aef4b-f618-498e-8847-2d620e286838
2010-12-22 14:50:59 +00:00
darthgandalf
0ad5cf8e71 Proper way of ignoring fails in Makefile.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2192 726aef4b-f618-498e-8847-2d620e286838
2010-12-22 14:50:34 +00:00
darthgandalf
23d4cf9c6b This is bindings for Perl language, not for it's interpreter, so fix UI in Makefile.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2191 726aef4b-f618-498e-8847-2d620e286838
2010-12-22 14:50:06 +00:00
darthgandalf
33e1cccc10 Add phoniness to phony makefile targets.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2190 726aef4b-f618-498e-8847-2d620e286838
2010-12-22 14:49:31 +00:00
darthgandalf
ced8aa82ed Don't fail make install if there're no perl modules in source dir.
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2127 726aef4b-f618-498e-8847-2d620e286838
2010-09-10 20:34:24 +00:00
darthgandalf
20a9002953 Rename modperl/modperl_wrap.cxx to modperl/ZNC.cpp
This should make psychon happier :)

Also small fix in Makefile to make swig header in another task.

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2123 726aef4b-f618-498e-8847-2d620e286838
2010-09-08 16:57:03 +00:00
psychon
992351b9d6 modperl: Move some common compiler flags to $(PERLCOMMON)
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2122 726aef4b-f618-498e-8847-2d620e286838
2010-09-08 15:57:05 +00:00
darthgandalf
a44e6eaada Big update of modperl module.
Old modperl had several flaws and was very outdated.
New modperl makes the whole ZNC API accessible from inside perl.
Modperl API was changed, so old perl modules are not supported,
but they weren't used much anyway.

Modperl needs --enable-perl option to ./configure.

This introduces new dependence on SWIG, which is needed only while
compiling ZNC. So to use modperl, you need to install SWIG or
to download several files and use --disable-swig option of configure.

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2120 726aef4b-f618-498e-8847-2d620e286838
2010-09-07 11:13:47 +00:00
psychon
877c5775b7 Add 'make V=1'
This does the very same thing 'make VERBOSE=1' does.


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2111 726aef4b-f618-498e-8847-2d620e286838
2010-08-23 17:51:40 +00:00
psychon
c91d032e6b Make make's output more readable
The real command line is now hidden and instead a short message which explains
what is done is displayed. To get back the old behavior, use "make VERBOSE=1".

Thanks to DarthGandalf for this.


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2094 726aef4b-f618-498e-8847-2d620e286838
2010-08-03 10:01:36 +00:00
psychon
eb307ddc6f Use AC_PROG_INSTALL to find a usable install
Thanks to LeftWing aka Joshua M. Clulow. This patch is based on his work.


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2067 726aef4b-f618-498e-8847-2d620e286838
2010-07-05 16:35:48 +00:00
psychon
84ae0f2edd Set $SHELL in Makefiles
$SHELL controls which shell is used for executing the commands in a Makefile.
Since modules/Makefile does not work with ksh, we need to find a "proper" shell.
Luckily, configure already did that job and announces its findings via @SHELL@.

This should make our Makefile work on Solaris.
Thanks to LeftWing aka Joshua M. Clulow.


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2064 726aef4b-f618-498e-8847-2d620e286838
2010-07-05 15:54:03 +00:00
psychon
703a5e879f modules/Makefile: Don't try to install www/
That directory was removed in r1997 so trying to install it might be rather
tricky (in fact, it failed and caused 'make install' to abort).


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@2000 726aef4b-f618-498e-8847-2d620e286838
2010-05-18 16:16:04 +00:00