diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 97cb3feb..13c13286 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -7,10 +7,8 @@ name: Check Irssi env: apt_build_deps: libutf8proc-dev libperl-dev libotr5-dev apt_build_deps_meson: ninja-build - apt_build_deps_autotools: autoconf automake libtool get_pip_build_deps_meson: pip3 install setuptools${setuptools_ver}; pip3 install wheel; pip3 install meson${meson_ver} build_options_meson: -Dwith-proxy=yes -Dwith-bot=yes -Dwith-perl=yes -Dwith-otr=yes - build_options_configure: --with-proxy=module --with-bot --with-perl=module --with-otr=module prefix: ~/irssi-build jobs: dist: @@ -18,13 +16,11 @@ jobs: steps: - name: prepare required software run: | - sudo apt update && sudo apt install $apt_build_deps $apt_build_deps_autotools + sudo apt update && sudo apt install $apt_build_deps - uses: actions/checkout@main - name: make dist run: | - # make dist - ./autogen.sh $build_options_configure - make dist + ./utils/make-dist.sh - uses: actions/upload-artifact@v2 with: path: irssi-*.tar.gz @@ -39,7 +35,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-18.04, ubuntu-latest] - builder: [meson, configure] + builder: [meson] compiler: [clang, gcc] flags: [regular] include: @@ -49,7 +45,7 @@ jobs: setuptools_ver: <51 - os: ubuntu-latest builder: meson - meson_ver: <0.60.0 + meson_ver: <0.61.2 - os: ubuntu-latest builder: meson flags: meson-latest FAILURE-OK @@ -77,23 +73,6 @@ jobs: ninja -C Build ninja -C Build install if: ${{ matrix.builder == 'meson' }} - - name: build and install with Makefile - run: | - # make install - cd irssi-*/ - mkdir Build - cd Build - ../configure $build_options_configure --prefix=${prefix/\~/~} --enable-always-build-tests - make CFLAGS="-Wall -Werror -Werror=declaration-after-statement" - make install - if: ${{ matrix.builder == 'configure' }} - - name: run tests with Makefile - run: | - # make check - cd irssi-*/Build - make -C tests -sk check - find -name test-suite.log -exec cat {} + - if: ${{ matrix.builder == 'configure' }} - name: run tests with Meson run: | # ninja test diff --git a/.gitignore b/.gitignore index 217ce3a8..ea2cd7ba 100644 --- a/.gitignore +++ b/.gitignore @@ -86,3 +86,6 @@ src/fe-fuzz/oom-* Build subprojects/* !subprojects/*.wrap +Irssi-Dist +setup.cfg +*.egg-info diff --git a/INSTALL b/INSTALL index 3dbe2ebd..47cce53f 100644 --- a/INSTALL +++ b/INSTALL @@ -17,21 +17,12 @@ For most people, this should work just fine: su ninja -C Build install -For the moment, autotools is also supported: +meson options - ./autogen.sh (for people who just cloned the repository) - ./configure (if this script already exists, skip ./autogen.sh) - make - su - make install (not _really_ required except for perl support) - -configure options - - These options can be given to meson or ./configure. - The first syntax is for meson, the 2nd for ./configure + These options can be given to meson. For a complete list of options, run - meson configure / ./configure --help + meson configure --prefix @@ -39,33 +30,28 @@ configure options YES, you can install Irssi WITHOUT ROOT permissions by using --prefix=/home/dir - -Dwith-proxy=yes / --with-proxy + -Dwith-proxy=yes Build the Irssi proxy (see startup-HOWTO). - -Dwith-perl=[yes|no] / --with-perl=[yes|no|module] + -Dwith-perl=[yes|no] Enable Perl support yes enable builtin (default) no disable - module enable as module - -Dwith-perl-lib=[site|vendor|DIR] / --with-perl-lib=[site|vendor|DIR] + -Dwith-perl-lib=[site|vendor|DIR] Specify installation dir for Perl libraries site install in dir for site-specific modules (default) vendor install in dir for vendor-specific modules DIR install in DIR - [N/A] / --with-socks - - Build with socks library - - -Dwith-bot=yes / --with-bot + -Dwith-bot=yes Build irssi-bot - -Dwithout-textui=yes / --without-textui + -Dwithout-textui=yes Build without text frontend @@ -82,31 +68,18 @@ the -Dc_args and -Dc_link_args options variable, eg.: Perl support generates most of the problems. There's quite a many things that can go wrong: - - Compiling fails if you compile irssi with GCC in a system that has - perl compiled with some other C compiler. Very common problem with - non-Linux/BSD systems. You'll need to edit src/perl/*/Makefile files - and remove the parameters that gcc doesn't like. Mostly you'll just - need to keep the -I and -D parameters and add -fPIC. - If there's any weird crashing at startup, you might have older irssi's perl libraries installed somewhere, and you should remove those. - - Dynamic libraries don't want to work with some systems, so if your - system complains about some missing symbol in Irssi.so file, configure - irssi with --with-perl-staticlib option (NOT same as --with-perl=static). - - If configure complains that it doesn't find some perl stuff, you're + - If meson complains that it doesn't find some perl stuff, you're probably missing libperl.so or libperl.a. In debian, you'll need to do apt-get install libperl-dev - - For unprivileged home directory installations, you probably do not want - to specify --with-perl-lib=(site|vendor). Instead, you can use the - default perl installation target (below the irssi prefix). If you are - using local::lib you can also choose to install there by specifying - --with-perl-lib=$PERL_LOCAL_LIB_ROOT/lib/perl5 You can verify that the perl module is loaded and working with "/LOAD" command. It should print something like: Module Type Submodules ... -perl static core fe +perl dynamic fe core System specific notes @@ -134,13 +107,4 @@ would call: Getting perl scripting to work needs a few things: - - configure with --with-perl-staticlib - - - libperl.dll is required in linking and running irssi, it's normally - located somewhere around /usr/lib/perl5/5.6.1/cygwin/CORE/libperl5_6_1.dll - copy it to eg. /usr/bin/libperl.dll - - - -DUSEIMPORTLIB is needed to be defined while compiling src/perl directory. - It doesn't hurt to be defined everywhere, so configure irssi with: - - CFLAGS='-DUSEIMPORTLIB' ./configure --with-perl-staticlib + - TODO diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 00000000..d03cbf21 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,25 @@ +global-include meson.build + +recursive-include src *.c *.h meson.build +recursive-include src/perl *.c *.h *.xs *.pm *.pl typemap meson.build +recursive-include tests *.c meson.build + +include meson_options.txt + +include subprojects/*.wrap +prune subprojects/*/ + +include utils/*.pl utils/*.sh +exclude utils/make-dist.sh + +include irssi.conf +include themes/*.theme +include docs/*.1 docs/*.txt docs/*.html +include docs/help/in/[a-z]*.in +include scripts/*.pl scripts/examples/*.pl + +include NEWS + +prune Build +prune dist +prune *.egg-info diff --git a/Makefile.am b/Makefile.am deleted file mode 100644 index 74f81303..00000000 --- a/Makefile.am +++ /dev/null @@ -1,35 +0,0 @@ -ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} - -# create default-config.h -BUILT_SOURCES = default-config.h default-theme.h irssi-version.h -CLEANFILES = default-config.h default-theme.h - -@MAINTAINER_MODE_TRUE@.PHONY: irssi-version.h - -default-config.h: $(srcdir)/irssi.conf - $(srcdir)/utils/file2header.sh $(srcdir)/irssi.conf default_config > default-config.h - -default-theme.h: $(srcdir)/themes/default.theme - $(srcdir)/utils/file2header.sh $(srcdir)/themes/default.theme default_theme > default-theme.h - -irssi-version.h: - VERSION="$(VERSION)" $(srcdir)/utils/irssi-version.sh $(srcdir) | \ - cmp -s - $@ || VERSION="$(VERSION)" $(srcdir)/utils/irssi-version.sh $(srcdir) >$@ - -SUBDIRS = src tests docs scripts themes utils - -confdir = $(sysconfdir) -conf_DATA = irssi.conf - -pkgconfig_DATA = irssi-1.pc - -pkginclude_HEADERS = irssi-config.h irssi-version.h - -EXTRA_DIST = \ - ChangeLog \ - autogen.sh \ - README.md \ - $(conf_DATA) \ - irssi-icon.png \ - meson.build \ - meson_options.txt diff --git a/autogen.sh b/autogen.sh deleted file mode 100755 index 17f60f89..00000000 --- a/autogen.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh -# Run this to generate all the initial makefiles, etc. - -PKG_NAME="Irssi" - -srcdir=`dirname "$0"` -test -z "$srcdir" && srcdir=. -mydir=`pwd` - -if test ! -f "$srcdir"/configure.ac; then - echo -n "**Error**: Directory \`$srcdir' does not look like the" - echo " top-level $PKG_NAME directory" - exit 1 -fi - -cd "$srcdir" - -# create help files -echo "Creating help files..." -perl utils/syntax.pl - -echo "Creating ChangeLog..." -git log > ChangeLog -if test "$?" -ne 0; then - echo "**Error**: ${PKG_NAME} Autogen must be run in a git clone, cannot proceed." - exit 1 -fi - -files=`echo docs/help/in/*.in|sed -e 's,docs/help/in/Makefile.in ,,' -e 's,docs/help/in/,!,g' -e 's/\.in /.in ?/g'` -cat docs/help/in/Makefile.am.gen|sed "s/@HELPFILES@/$files/g"|sed 's/?/\\?/g'|tr '!?' '\t\n' > docs/help/in/Makefile.am - -files=`echo $files|sed 's/\.in//g'` -cat docs/help/Makefile.am.gen|sed "s/@HELPFILES@/$files/g"|sed 's/?/\\?/g'|tr '!?' '\t\n' > docs/help/Makefile.am - -if test x$NOCONFIGURE = x && test -z "$*"; then - echo "**Warning**: I am going to run \`configure' with no arguments." - echo "If you wish to pass any to it, please specify them on the" - echo \`$0\'" command line." - echo -fi - -rm -f aclocal.m4 -echo "Running autoreconf ..." -autoreconf -i || exit $? - -# make sure perl hashes have correct length -find src/perl -name '*.c' -o -name '*.xs' -exec grep -n hv_store {} + | perl -l -ne 'if (/"(\w+)",\s*(\d+)/ && $2 != length $1) { $X=1; print "Incorrect key length in $_" } END { exit $X }' - -cd "$mydir" - -conf_flags="--enable-maintainer-mode" - -if test x$NOCONFIGURE = x; then - echo Running "$srcdir"/configure $conf_flags "$@" ... - "$srcdir"/configure $conf_flags "$@" \ - && echo Now type \`make\' to compile $PKG_NAME || exit 1 -else - echo Skipping configure process. -fi - -if grep -q '==\|\[\[' "$srcdir"/build-aux/test-driver; then - echo - echo "************************************************************************" - echo "**Warning**: your build is not portable, please do not make dist" - echo " see https://bugzilla.opensuse.org/show_bug.cgi?id=1076146" - echo "************************************************************************" -fi diff --git a/configure.ac b/configure.ac deleted file mode 100644 index a51edf3c..00000000 --- a/configure.ac +++ /dev/null @@ -1,821 +0,0 @@ -AC_INIT(irssi, 1.4-head-an) -AC_CONFIG_SRCDIR([src]) -AC_CONFIG_AUX_DIR(build-aux) -AC_PREREQ(2.50) - -AC_CONFIG_HEADERS([irssi-config.h]) -AC_CONFIG_MACRO_DIR([m4]) -AM_INIT_AUTOMAKE([1.9 no-define foreign subdir-objects nostdinc]) - -AM_SILENT_RULES([yes]) - -AM_MAINTAINER_MODE - -AC_PROG_CC -AC_PROG_CPP -AM_PROG_LIBTOOL - -AC_PATH_PROG(sedpath, sed) -AC_PATH_PROG(perlpath, perl) - -PKG_INSTALLDIR - -AC_CHECK_HEADERS(unistd.h dirent.h sys/ioctl.h sys/resource.h) - -# check posix headers.. -AC_CHECK_HEADERS(sys/socket.h sys/time.h sys/utsname.h) - -AC_SYS_LARGEFILE - -AC_ARG_WITH(socks, -[ --with-socks Build with socks support], - if test x$withval = xno; then - want_socks=no - else - want_socks=yes - fi, - want_socks=no) - -AC_ARG_WITH(textui, -[ --without-textui Build without text frontend], - if test x$withval = xno; then - want_textui=no - else - want_textui=yes - fi, - want_textui=yes) - -AC_ARG_WITH(bot, -[ --with-bot Build irssi-bot], - if test x$withval = xno; then - want_irssibot=no - else - want_irssibot=yes - fi, - want_irssibot=no) - -AC_ARG_WITH(fuzzer, -[ --with-fuzzer Build irssi-fuzzer], - if test x$withval = xno; then - want_irssifuzzer=no - else - want_irssifuzzer=yes - fi, - want_irssifuzzer=no) - -AC_ARG_WITH(fuzzer-lib, -[ --with-fuzzer-lib Specify path to fuzzer library], - fuzzerlibpath="$withval") - -AC_ARG_WITH(proxy, -[ --with-proxy Build irssi-proxy], - if test x$withval = xno; then - want_irssiproxy=no - else - want_irssiproxy=yes - fi, - want_irssiproxy=no) - -AC_ARG_WITH(modules, -[ --with-modules Specify what modules to build in binary], - if test x$withval != xyes -a x$withval != xno; then - build_modules="$withval" - fi) - -if test "x$prefix" != "xNONE"; then - prefix=`eval echo $prefix` - PERL_MM_PARAMS="INSTALLDIRS=perl INSTALL_BASE=$prefix" - perl_set_use_lib=yes - - perl_prefix_note=yes -fi - -AC_ARG_WITH(perl-staticlib, -[ --with-perl-staticlib Specify that we want to link perl libraries - statically in irssi, default is no], - if test x$withval = xno; then - want_staticperllib=no - else - want_staticperllib=yes - fi, - want_staticperllib=no) - - -AC_ARG_WITH(perl-lib, -[ --with-perl-lib=[perl|site|vendor|DIR] Specify where to install the - Perl libraries for irssi, default is site], - if test "x$withval" = xyes; then - want_perl=yes - elif test "x$withval" = xno; then - want_perl=no - elif test "x$withval" = xperl; then - want_perl=yes - perl_prefix_note=no - PERL_MM_PARAMS="INSTALLDIRS=perl" - perl_set_use_lib=no - elif test "x$withval" = xsite; then - want_perl=yes - perl_prefix_note=no - PERL_MM_PARAMS="" - perl_set_use_lib=no - elif test "x$withval" = xvendor; then - want_perl=yes - perl_prefix_note=no - if test -z "`$perlpath -v|grep '5\.0'`"; then - PERL_MM_PARAMS="INSTALLDIRS=vendor" - else - PERL_MM_PARAMS="INSTALLDIRS=perl PREFIX=`$perlpath -e 'use Config; print $Config{prefix}'`" - fi - perl_set_use_lib=no - else - want_perl=yes - perl_prefix_note=no - PERL_MM_PARAMS="INSTALLDIRS=perl LIB=$withval" - perl_set_use_lib=yes - fi, - want_perl=yes) - -AC_ARG_WITH(perl, -[ --with-perl[=yes|no|module] Build with Perl support - also specifies - if it should be built into main irssi binary - (static, default) or as module], - if test x$withval = xyes; then - want_perl=static - elif test x$withval = xstatic; then - want_perl=static - elif test x$withval = xmodule; then - want_perl=module - else - want_perl=no - fi, - want_perl=static) - -AC_ARG_WITH(otr, -[ --with-otr[=yes|no|static] Build with OTR support - also specifies - if it should be built into the main irssi - binary (static) or as a module (default)], - if test x$withval = xyes; then - want_otr=module - elif test x$withval = xstatic; then - want_otr=static - elif test x$withval = xmodule; then - want_otr=module - else - want_otr=no - fi, - want_otr=no) - -AC_ARG_ENABLE(true-color, -[ --enable-true-color Build with true color support in terminal], - if test x$enableval = xno ; then - want_truecolor=no - else - want_truecolor=yes - fi, - want_truecolor=no) - -AC_ARG_ENABLE(gregex, -[ --disable-gregex Build without GRegex (fall back to regex.h)], - if test x$enableval = xno ; then - want_gregex=no - else - want_gregex=yes - fi, - want_gregex=yes) - -AC_ARG_ENABLE(utf8proc, -[ --disable-utf8proc Build without Julia's utf8proc], - if test x$enableval = xno ; then - want_utf8proc=no - else - want_utf8proc=yes - fi, - want_utf8proc=yes) - -AC_ARG_WITH(capsicum, -[ --with-capsicum Build with Capsicum support], - if test x$withval = xno; then - want_capsicum=no - else - want_capsicum=yes - fi, - want_capsicum=yes) - -dnl ** -dnl ** just some generic stuff... -dnl ** - -dnl * OS specific options -case "$host_os" in - hpux*) - CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED" - ;; - *) - ;; -esac - - -AC_SEARCH_LIBS([socket], [network socket]) - -AC_SEARCH_LIBS([inet_addr], [nsl]) - -dnl * gcc specific options -if test "x$ac_cv_prog_gcc" = "xyes"; then - CFLAGS="$CFLAGS -Wall" -fi - -AC_CHECK_TYPE(socklen_t, , - [AC_DEFINE([socklen_t], [int], [Define to 'int' if doesn't define.])], [ -AC_INCLUDES_DEFAULT -#ifdef HAVE_SYS_SOCKET_H -# include -#endif -]) - -AC_CHECK_SIZEOF(int) -AC_CHECK_SIZEOF(long) -AC_CHECK_SIZEOF(long long) -AC_CHECK_SIZEOF(off_t) - -if test $ac_cv_sizeof_off_t = 8; then - offt_64bit=yes -else - offt_64bit=no -fi - -dnl ** -dnl ** check for socks -dnl ** - -if test "x$want_socks" = "xyes"; then - AC_CHECK_LIB(socks, connect, [ - AC_DEFINE(HAVE_SOCKS,, Build with socks support) - LIBS="$LIBS -lsocks" - AC_CHECK_HEADER(socks.h, [ - AC_DEFINE(HAVE_SOCKS_H) - CFLAGS="$CFLAGS -DSOCKS" - AC_MSG_RESULT(["socks5 library found, building with it"]) - ], [ - AC_MSG_RESULT(["socks4 library found, building with it"]) - CFLAGS="$CFLAGS -Dconnect=Rconnect -Dgetsockname=Rgetsockname -Dgetpeername=Rgetpeername -Dbind=Rbind -Daccept=Raccept -Dlisten=Rlisten -Dselect=Rselect" - ]) - ]) -fi - -dnl ** -dnl ** fe-text checks -dnl ** - -for try in 1 2; do - if test $try = 1; then - glib_modules=gmodule - else - echo "*** trying without -lgmodule" - glib_modules= - fi - AM_PATH_GLIB_2_0(2.32.0,,, $glib_modules) - if test "$GLIB_LIBS"; then - if test $glib_modules = gmodule; then - AC_DEFINE(HAVE_GMODULE) - have_gmodule=yes - fi - break - fi -done - -if test -z "$GLIB_LIBS"; then - echo - echo "*** If you don't have GLIB, you can get it from ftp://ftp.gtk.org/pub/glib/" - echo "*** We recommend you get the latest stable GLIB 2 version." - echo "*** Compile and install it, and make sure pkg-config finds it," - echo "*** by adding the path where the .pc file is located to PKG_CONFIG_PATH" - echo -n "*** Or alternatively install your distribution's package" - if test -f /etc/debian_version; then - echo : - echo "*** sudo apt-get install libglib2.0-dev" - elif test -f /etc/redhat-release; then - echo " (glib2-devel)" - else - echo . - fi - echo - - AC_ERROR([GLIB is required to build irssi.]) -fi - -LIBS="$LIBS $GLIB_LIBS" - -GLIB_TESTS - -dnl ** -dnl ** OpenSSL checks -dnl ** -PKG_CHECK_MODULES([OPENSSL], [openssl], [ - CFLAGS="$CFLAGS $OPENSSL_CFLAGS" - LIBS="$LIBS $OPENSSL_LIBS" -], [ - AC_CHECK_LIB([ssl], [SSL_library_init], [ - LIBS="$LIBS -lssl -lcrypto" - ], [ - AC_MSG_ERROR([The OpenSSL library was not found]) - ]) -]) - -dnl ** -dnl ** utf8proc -dnl ** -if test "x$want_utf8proc" != "xno"; then - AC_CHECK_HEADER([utf8proc.h], [ - AC_CHECK_LIB([utf8proc], [utf8proc_version], [ - want_utf8proc=yes - AC_DEFINE(HAVE_LIBUTF8PROC,, [Define to 1 if you have the `utf8proc' library (-lutf8proc).]) - LIBS="$LIBS -lutf8proc" - ], [ - want_utf8proc="no, library not found" - ]) - ], [ - want_utf8proc="no, library header not found" - ]) -fi - -dnl ** -dnl ** curses checks -dnl ** - -if test "x$want_textui" != "xno"; then - - TEXTUI_NO_LIBS="$LIBS" - LIBS= - AC_SEARCH_LIBS([setupterm], [tinfo ncursesw ncurses terminfo], [want_textui=yes], [ - AC_ERROR(Terminfo not found - install libncurses-dev or ncurses-devel package) - want_textui="no, Terminfo not found" - ]) - - TEXTUI_LIBS="$LIBS" - AC_SUBST(TEXTUI_LIBS) - LIBS="$TEXTUI_NO_LIBS" - - AC_CHECK_HEADER([term.h], [ - AC_DEFINE(HAVE_TERM_H, [], [Define to 1 if you have the `term.h' header.]) - ]) - -fi - -dnl ** -dnl ** irssifuzzer checks -dnl ** - -if test "$want_irssifuzzer" != "no"; then - dnl * we need to build with -fsanitize-coverage=trace-pc-guard - dnl * otherwise fuzzer won't be very successful at finding bugs :) - if test -z "$SANFLAGS"; then - SANFLAGS="-g -fsanitize=address -fsanitize-coverage=trace-pc-guard" - fi - CFLAGS="$CFLAGS $SANFLAGS" - CXXFLAGS="$CXXFLAGS $SANFLAGS" - - AC_MSG_CHECKING(for fuzzer library) - - if test -z "$fuzzerlibpath"; then - AC_MSG_RESULT([not found, building without fuzzer front end]) - want_irssifuzzer=no - else - FUZZER_LIBS="$fuzzerlibpath" - AC_SUBST(FUZZER_LIBS) - fi -fi - -dnl ** -dnl ** perl checks -dnl ** - -if test "$want_perl" != "no"; then - AC_MSG_CHECKING(for working Perl support) - - if test -z "$perlpath"; then - perl_check_error="perl binary not found" - else - PERL_CFLAGS=`$perlpath -MExtUtils::Embed -e ccopts 2>/dev/null` - fi - - if test "x$ac_cv_prog_gcc" = "xyes" -a -z "`echo $host_os|grep 'bsd\|linux'`"; then - dnl * several systems have Perl compiled with native compiler - dnl * but irssi is being compiled with GCC. Here we try to - dnl * fix those command line options a bit so GCC won't - dnl * complain about them. Normally there's only few options - dnl * that we want to keep: - dnl * -Ddefine -Uundef -I/path -fopt -mopt -iwithsysroot - PERL_CFLAGS=`echo $PERL_CFLAGS | $perlpath -pe 's/^(.* )?-@<:@^DUIifm@:>@@<:@^ @:>@+/\1/g; s/^(.* )?\+@<:@^ @:>@+/\1/g'` - - PERL_EXTRA_OPTS="CCCDLFLAGS=\"-fPIC\"" - AC_SUBST(PERL_EXTRA_OPTS) - fi - - if test -z "$PERL_CFLAGS"; then - if test -n "$perl_check_error"; then - perl_check_error="Error getting perl CFLAGS" - fi - AC_MSG_RESULT([not found, building without Perl]) - want_perl=no - else - PERL_LDFLAGS=`$perlpath -MExtUtils::Embed -e ldopts 2>/dev/null` - - dnl * remove all database stuffs - dnl * nsl is already in ldflags - dnl * libc is of course linked without needing -lc - dnl * -rdynamic must not be in LIBADD line - for word in -ldb -ldbm -lndbm -lgdbm -lc -rdynamic; do - PERL_LDFLAGS=`echo $PERL_LDFLAGS | $sedpath -e "s/$word //" -e "s/$word$//"` - done - - case "$host_os" in - linux*) - PERL_LDFLAGS=`echo $PERL_LDFLAGS | $sedpath -e 's/-lposix //' -e 's/-lposix$//'` - ;; - hpux*) - if test "x$ac_cv_prog_gcc" = "xyes"; then - PERL_CFLAGS=`echo $PERL_CFLAGS | $sedpath -e 's/-Ae //' -e 's/-Ae$//'` - PERL_LDFLAGS=`echo $PERL_LDFLAGS | $sedpath -e 's/-Ae //' -e 's/-Ae$//'` - fi - ;; - *) - ;; - esac - - dnl * check that perl's ldflags actually work - echo "#include " > conftest.c - echo "#include " >> conftest.c - echo "int main(){perl_alloc(); return 0;}" >> conftest.c - $CC $CFLAGS $PERL_CFLAGS conftest.c -o conftest $LDFLAGS $PERL_LDFLAGS 2> perl.error.tmp > /dev/null - if test ! -s conftest -a "x$ignore_perl_errors" = "x"; then - perl_check_error="Error linking with perl libraries: $PERL_LDFLAGS: `cat perl.error.tmp`" - AC_MSG_RESULT([error linking with perl libraries, building without Perl]) - want_perl=no - fi - - rm -f perl.error.tmp - fi - - if test "x$want_perl" != "xno"; then - AC_MSG_RESULT(ok) - - if test "x$want_perl" = "xstatic"; then - dnl * building with static perl support - dnl * all PERL_LDFLAGS linking is done in fe-text - PERL_LINK_FLAGS="$PERL_LDFLAGS" - PERL_LINK_LIBS="../perl/libperl_core_static.la" - PERL_FE_LINK_LIBS="../perl/libfe_perl_static.la" - PERL_LDFLAGS= - AC_DEFINE(HAVE_STATIC_PERL) - - dnl * build only static library of perl module - perl_module_lib= - perl_module_fe_lib= - perl_static_lib=libperl_core_static.la - perl_static_fe_lib=libfe_perl_static.la - else - dnl * build dynamic library of perl module - perl_module_lib=libperl_core.la - perl_module_fe_lib=libfe_perl.la - perl_static_lib= - perl_static_fe_lib= - fi - - if test "x$want_staticperllib" = "xyes"; then - PERL_MM_PARAMS="$PERL_MM_PARAMS LINKTYPE=static" - PERL_LINK_LIBS="$PERL_LINK_LIBS ../perl/common/blib/arch/auto/Irssi/Irssi.a ../perl/irc/blib/arch/auto/Irssi/Irc/Irc.a ../perl/ui/blib/arch/auto/Irssi/UI/UI.a ../perl/textui/blib/arch/auto/Irssi/TextUI/TextUI.a" - PERL_STATIC_LIBS=1 - else - PERL_STATIC_LIBS=0 - fi - - # remove any prefix from PERL_MM_OPT - PERL_MM_OPT=`perl -MText::ParseWords -e 'sub qu{$_=shift;s{^(.*?)=(.*)$}{($a,$b)=($1,$2);$b=~s/"/\\\\"/g;qq{$a="$b"}}ge if /@<:@\s"@:>@/;$_} local $,=" "; print map qu($_), grep !/^(INSTALL_BASE|PREFIX)=/, shellwords(@ARGV)' "$PERL_MM_OPT"` - # figure out the correct @INC path - we'll need to do this - # through MakeMaker since it's difficult to get it right - # otherwise. - $perlpath -MExtUtils::MakeMaker -e 'WriteMakefile(NAME => "test", MAKEFILE => "Makefile.test", FIRST_MAKEFILE => "/dev/null", NO_META => 1, NO_MYMETA => 1);' $PERL_MM_PARAMS >/dev/null - echo 'show-INSTALLDIRS:' >> Makefile.test - echo ' @echo $(INSTALLDIRS)' >> Makefile.test - perl_INSTALLDIRS=`$am_make -s -f Makefile.test show-INSTALLDIRS` - if test "x$perl_INSTALLDIRS" = "xsite"; then - perl_library_dir="site default" - perl_INSTALL_VAR=INSTALLSITEARCH - elif test "x$perl_INSTALLDIRS" = "xvendor"; then - perl_library_dir="vendor default" - perl_INSTALL_VAR=INSTALLVENDORARCH - else - perl_library_dir="module default" - perl_INSTALL_VAR=INSTALLARCHLIB - fi - echo 'show-ARCHLIB:' >> Makefile.test - echo ' @echo $('"$perl_INSTALL_VAR"')' >> Makefile.test - perl_use_lib=`$am_make -s -f Makefile.test show-ARCHLIB` - rm -f Makefile.test - if test "x$perl_set_use_lib" = "xyes"; then - if $perlpath -e 'exit ! grep $_ eq $ARGV@<:@0@:>@, grep /^\//, @INC' "$perl_use_lib"; then - perl_library_dir="other path in @INC" - perl_set_use_lib=no - else - perl_library_dir="prepends to @INC with /set perl_use_lib" - PERL_USE_LIB="$perl_use_lib" - fi - fi - - AC_SUBST(perl_module_lib) - AC_SUBST(perl_static_lib) - AC_SUBST(perl_module_fe_lib) - AC_SUBST(perl_static_fe_lib) - - AC_SUBST(PERL_LINK_FLAGS) - AC_SUBST(PERL_LINK_LIBS) - AC_SUBST(PERL_FE_LINK_LIBS) - - AC_SUBST(PERL_LDFLAGS) - AC_SUBST(PERL_CFLAGS) - - AC_SUBST(PERL_USE_LIB) - AC_SUBST(PERL_MM_OPT) - AC_SUBST(PERL_MM_PARAMS) - AC_SUBST(PERL_STATIC_LIBS) - fi -fi - -dnl ** -dnl ** check for capsicum -dnl ** - -if test "x$want_capsicum" = "xyes"; then - AC_CHECK_LIB(c, cap_enter, [ - AC_CHECK_LIB(nv, nvlist_create, [ - AC_DEFINE(HAVE_CAPSICUM,, Build with Capsicum support) - LIBS="$LIBS -lnv" - ], [ - want_capsicum="no, nvlist_create not found" - ]) - ], [ - want_capsicum="no, cap_enter not found" - ]) -fi - -dnl ** -dnl ** OTR checks -dnl ** - -have_otr=no -if test "x$want_otr" != "xno"; then - AM_PATH_LIBGCRYPT(1:1.2.0, [], [AC_ERROR(libgcrypt 1.2.0 or newer is required.)]) - AM_PATH_LIBOTR(4.1.0, [], [AC_ERROR([libotr 4.1.0 or newer is required.])]) - - OTR_CFLAGS="$LIBOTR_CFLAGS $LIBGCRYPT_CFLAGS" - OTR_LDFLAGS="$LIBOTR_LIBS $LIBGCRYPT_LIBS" - - AC_SUBST(otr_module_lib) - AC_SUBST(otr_static_lib) - - if test "x$want_otr" != "xno"; then - if test "x$want_otr" = "xstatic"; then - otr_module_lib= - otr_static_lib=libotr_core_static.la - - OTR_LINK_LIBS="../otr/libotr_core_static.la" - OTR_LINK_FLAGS="$OTR_LDFLAGS" - - AC_DEFINE(HAVE_STATIC_OTR) - else - otr_module_lib=libotr_core.la - otr_static_lib= - fi - fi - - AC_SUBST(otr_module_lib) - AC_SUBST(otr_static_lib) - - AC_SUBST(OTR_CFLAGS) - AC_SUBST(OTR_LDFLAGS) - - AC_SUBST(OTR_LINK_LIBS) - AC_SUBST(OTR_LINK_FLAGS) - - have_otr=yes -fi - -dnl ** check what we want to build -AM_CONDITIONAL(BUILD_TEXTUI, test "$want_textui" = "yes") -AM_CONDITIONAL(BUILD_IRSSIBOT, test "$want_irssibot" = "yes") -AM_CONDITIONAL(BUILD_IRSSIFUZZER, test "$want_irssifuzzer" = "yes") -AM_CONDITIONAL(BUILD_IRSSIPROXY, test "$want_irssiproxy" = "yes") -AM_CONDITIONAL(HAVE_PERL, test "$want_perl" != "no") -AM_CONDITIONAL(HAVE_CAPSICUM, test "x$want_capsicum" = "xyes") -AM_CONDITIONAL(USE_GREGEX, test "x$want_gregex" = "xyes") -AM_CONDITIONAL(HAVE_OTR, test "x$have_otr" != "xno") - -# move LIBS to PROG_LIBS so they're not tried to be used when linking eg. perl libraries -PROG_LIBS=$LIBS -LIBS= -AC_SUBST(PROG_LIBS) - -dnl ** -dnl ** Keep all the libraries here so each frontend doesn't need to -dnl ** keep track of them all -dnl ** -dnl ** (these could be made configurable) - -CHAT_MODULES="irc" -irc_MODULES="dcc flood notifylist" -if test -n "$build_modules"; then - irc_MODULES="$irc_MODULES $build_modules" -fi - -dnl **************************************** - -AC_SUBST(CHAT_MODULES) -AC_SUBST(irc_MODULES) - -CORE_LIBS="../core/libcore.a ../lib-config/libirssi_config.a" -FE_COMMON_LIBS="" - -CHAT_LIBS="" -for c in $CHAT_MODULES; do - CHAT_LIBS="$CHAT_LIBS ../$c/lib$c.a ../$c/core/lib${c}_core.a" - if test -f $srcdir/src/fe-common/$c/module.h; then - FE_COMMON_LIBS="$FE_COMMON_LIBS../fe-common/$c/libfe_common_$c.a " - fi - for s in `eval echo \\$${c}_MODULES`; do - CHAT_LIBS="$CHAT_LIBS ../$c/$s/lib${c}_$s.a" - if test -f $srcdir/src/fe-common/$c/$s/module.h; then - FE_COMMON_LIBS="$FE_COMMON_LIBS../fe-common/$c/$s/libfe_${c}_$s.a " - fi - done -done - -FE_COMMON_LIBS="$FE_COMMON_LIBS../fe-common/core/libfe_common_core.a" - -dnl ** common libraries needed by frontends -COMMON_NOUI_LIBS="$CHAT_LIBS $CORE_LIBS" -COMMON_LIBS="$FE_COMMON_LIBS $COMMON_NOUI_LIBS" -AC_SUBST(COMMON_NOUI_LIBS) -AC_SUBST(COMMON_LIBS) - -if test "x$want_truecolor" = "xyes"; then - AC_DEFINE([TERM_TRUECOLOR], [], [true color support in terminal]) -else - want_truecolor=no -fi - -if test "x$want_gregex" = "xyes"; then - AC_DEFINE([USE_GREGEX], [], [use GRegex for regular expressions]) -else - want_gregex=no -fi - -AC_DEFINE([FHS_PREFIX], [""], [Alternate filesystem prefix for Termux]) -AH_TEMPLATE(HAVE_GMODULE) -AH_TEMPLATE(HAVE_SOCKS_H, [misc..]) -AH_TEMPLATE(HAVE_STATIC_PERL) -AH_TEMPLATE(HAVE_STATIC_OTR) -AH_TEMPLATE(PRIuUOFF_T, [printf()-format for uoff_t, eg. "u" or "lu" or "llu"]) -AH_TEMPLATE(UOFF_T_INT, [What type should be used for uoff_t]) -AH_TEMPLATE(UOFF_T_LONG) -AH_TEMPLATE(UOFF_T_LONG_LONG) - -AC_CONFIG_FILES([ -Makefile -src/Makefile -src/core/Makefile -src/irc/Makefile -src/irc/core/Makefile -src/irc/dcc/Makefile -src/irc/notifylist/Makefile -src/irc/proxy/Makefile -src/irc/flood/Makefile -src/fe-common/Makefile -src/fe-common/core/Makefile -src/fe-common/irc/Makefile -src/fe-common/irc/dcc/Makefile -src/fe-common/irc/notifylist/Makefile -src/fe-fuzz/Makefile -src/fe-fuzz/irc/Makefile -src/fe-fuzz/irc/core/Makefile -src/fe-fuzz/fe-common/Makefile -src/fe-fuzz/fe-common/core/Makefile -src/fe-none/Makefile -src/fe-text/Makefile -src/lib-config/Makefile -src/perl/Makefile -src/perl/common/Makefile.PL -src/perl/irc/Makefile.PL -src/perl/ui/Makefile.PL -src/perl/textui/Makefile.PL -src/otr/Makefile -scripts/Makefile -scripts/examples/Makefile -tests/Makefile -tests/fe-common/Makefile -tests/fe-common/core/Makefile -tests/fe-text/Makefile -tests/irc/Makefile -tests/irc/core/Makefile -tests/irc/flood/Makefile -docs/Makefile -docs/help/Makefile -docs/help/in/Makefile -utils/Makefile -themes/Makefile -irssi-1.pc -]) - -dnl ** make the paths like include headers later -AC_CONFIG_LINKS([irssi/irssi-config.h:irssi-config.h]) -AC_LINK_FILES([$srcdir/src],[irssi/src]) - -AC_OUTPUT -$LN_S ../irssi-version.h irssi/irssi-version.h - -dnl ** for building from objdir -old_dir=`pwd` && cd $srcdir && whole_dir=`pwd` && cd $old_dir -if test "x$old_dir" != "x$whole_dir"; then - $LN_S $srcdir/irssi-version.h irssi-version.h - if test "x$want_perl" != "xno"; then - subdirfiles="" - for i in $whole_dir/src/perl/common $whole_dir/src/perl/irc $whole_dir/src/perl/ui $whole_dir/src/perl/textui; do - subdirfiles=`echo $subdirfiles $i/typemap $i/*.h $i/*.pm $i/*.xs` - done - for file in $whole_dir/src/perl/module.h $subdirfiles; do - link=`echo $file|$sedpath "s?$whole_dir/??"` - rm -f $link - $LN_S $file $link - done - fi -fi - -echo - -echo "Building text frontend ........... : $want_textui" -echo "Building irssi bot ............... : $want_irssibot" -echo "Building irssi proxy ............. : $want_irssiproxy" -if test "x$have_gmodule" = "xyes"; then - echo "Building with module support ..... : yes" -else - echo "Building with module support : NO!! /LOAD will not work!" - echo " - You're missing gmodule (comes with glib) for some reason," - echo " or it doesn't work in your system." -fi - -if test "x$want_perl" = "xstatic"; then - echo "Building with Perl support ....... : static (in irssi binary)" -elif test "x$want_perl" = "xmodule"; then - echo "Building with Perl support ....... : module" -else - if test -z "$perl_check_error"; then - echo "Building with Perl support ....... : no" - else - echo "Building with Perl support ....... : NO!" - echo " - $perl_check_error" - if test -f /etc/debian_version; then - echo " - Try: sudo apt-get install libperl-dev" - elif test -f /etc/redhat-release; then - echo " - Try installing perl-devel" - fi - fi -fi - -if test "x$want_perl" != "xno" -a "x$perl_mod_error" != "x"; then - echo " - NOTE: Perl support will be compiled statically to irssi, not as" - echo " a module as requested. Reason:" - echo " $perl_mod_error" - - if test -f /etc/debian_version; then - echo " - Try: sudo apt-get install libperl-dev" - fi -fi - -if test "x$want_perl" != "xno"; then - echo "Perl library directory ........... : ($perl_library_dir - $perl_use_lib)" - if test "x$perl_prefix_note" = "xyes"; then - echo " - NOTE: This was automatically set to the same directory you gave with" - echo " --prefix. If you want the perl libraries to install to their 'correct'" - echo " path, you'll need to give --with-perl-lib=site option to configure." - echo " Anyway, installing perl to this directory should work just as well." - fi -fi -echo "Install prefix ................... : $prefix" - -echo - -echo "Building with 64bit DCC support .. : $offt_64bit" -echo "Building with true color support.. : $want_truecolor" -echo "Building with GRegex ............. : $want_gregex" -echo "Building with Capsicum ........... : $want_capsicum" -echo "Building with utf8proc ........... : $want_utf8proc" -if test "x$want_otr" = "xstatic"; then - echo "Building with OTR support ........ : static (in irssi binary)" -elif test "x$want_otr" = "xmodule"; then - echo "Building with OTR support ........ : module" -else - echo "Building with OTR support ........ : no" -fi - - -echo -echo "If there are any problems, read the INSTALL file." diff --git a/docs/Makefile.am b/docs/Makefile.am deleted file mode 100644 index 05ebb319..00000000 --- a/docs/Makefile.am +++ /dev/null @@ -1,21 +0,0 @@ -man_MANS = \ - irssi.1 - -doc_DATA = \ - capsicum.txt \ - design.html \ - design.txt \ - formats.txt \ - manual.txt \ - faq.html \ - faq.txt \ - perl.txt \ - signals.txt \ - special_vars.txt \ - startup-HOWTO.html \ - startup-HOWTO.txt - -EXTRA_DIST = $(doc_DATA) $(man_MANS) \ - meson.build - -SUBDIRS = help diff --git a/docs/help/Makefile.am.gen b/docs/help/Makefile.am.gen deleted file mode 100644 index 917abe64..00000000 --- a/docs/help/Makefile.am.gen +++ /dev/null @@ -1,13 +0,0 @@ -# Makefile.am is autogenerated by autogen.sh from Makefile.am.gen - -helpdir = $(datadir)/irssi/help - -help_DATA = \ -@HELPFILES@ - -EXTRA_DIST = \ - Makefile.am.gen \ - $(help_DATA) \ - meson.build - -SUBDIRS = in diff --git a/docs/help/in/Makefile.am.gen b/docs/help/in/Makefile.am.gen deleted file mode 100644 index 9b0f2aaa..00000000 --- a/docs/help/in/Makefile.am.gen +++ /dev/null @@ -1,5 +0,0 @@ -# Makefile.am is autogenerated by autogen.sh from Makefile.am.gen - -EXTRA_DIST = \ - Makefile.am.gen \ -@HELPFILES@ diff --git a/irssi-1.pc.in b/irssi-1.pc.in deleted file mode 100644 index a1c00f5c..00000000 --- a/irssi-1.pc.in +++ /dev/null @@ -1,20 +0,0 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -prog_libs="@PROG_LIBS@" -common_libs="@COMMON_LIBS@" - -perl_link_libs="@PERL_LINK_LIBS@" -perl_fe_link_libs="@PERL_FE_LINK_LIBS@" -perl_link_flags="@PERL_LINK_FLAGS@" - -chat_modules="@CHAT_MODULES@" -irc_modules="@irc_MODULES@" - -Name: Irssi -Description: Irssi chat client -Version: @PACKAGE_VERSION@ -Cflags: -I${includedir} @OPENSSL_CFLAGS@ -Requires: glib-2.0 \ No newline at end of file diff --git a/m4/glib-2.0.m4 b/m4/glib-2.0.m4 deleted file mode 100644 index 5b7c84c0..00000000 --- a/m4/glib-2.0.m4 +++ /dev/null @@ -1,208 +0,0 @@ -# Configure paths for GLIB -# Owen Taylor 1997-2001 - -dnl AM_PATH_GLIB_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) -dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if gmodule, gobject or -dnl gthread is specified in MODULES, pass to pkg-config -dnl -AC_DEFUN([AM_PATH_GLIB_2_0], -[dnl -dnl Get the cflags and libraries from pkg-config -dnl -AC_ARG_ENABLE(glibtest, [ --disable-glibtest do not try to compile and run a test GLIB program], - , enable_glibtest=yes) - - pkg_config_args=glib-2.0 - for module in . $4 - do - case "$module" in - gmodule) - pkg_config_args="$pkg_config_args gmodule-2.0" - ;; - gmodule-no-export) - pkg_config_args="$pkg_config_args gmodule-no-export-2.0" - ;; - gobject) - pkg_config_args="$pkg_config_args gobject-2.0" - ;; - gthread) - pkg_config_args="$pkg_config_args gthread-2.0" - ;; - esac - done - - PKG_PROG_PKG_CONFIG([0.7]) - - no_glib="" - - if test "x$PKG_CONFIG" = x ; then - no_glib=yes - PKG_CONFIG=no - fi - - min_glib_version=ifelse([$1], ,2.0.0,$1) - AC_MSG_CHECKING(for GLIB - version >= $min_glib_version) - - if test "x$PKG_CONFIG" != xno ; then - ## don't try to run the test against uninstalled libtool libs - if $PKG_CONFIG --uninstalled $pkg_config_args; then - echo "Will use uninstalled version of GLib found in PKG_CONFIG_PATH" - enable_glibtest=no - fi - - if $PKG_CONFIG --atleast-version $min_glib_version $pkg_config_args; then - : - else - no_glib=yes - fi - fi - - if test x"$no_glib" = x ; then - GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` - GOBJECT_QUERY=`$PKG_CONFIG --variable=gobject_query glib-2.0` - GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` - - GLIB_CFLAGS=`$PKG_CONFIG --cflags $pkg_config_args` - GLIB_LIBS=`$PKG_CONFIG --libs $pkg_config_args` - glib_config_major_version=`$PKG_CONFIG --modversion glib-2.0 | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - glib_config_minor_version=`$PKG_CONFIG --modversion glib-2.0 | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - glib_config_micro_version=`$PKG_CONFIG --modversion glib-2.0 | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` - if test "x$enable_glibtest" = "xyes" ; then - ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $GLIB_CFLAGS" - LIBS="$GLIB_LIBS $LIBS" -dnl -dnl Now check if the installed GLIB is sufficiently new. (Also sanity -dnl checks the results of pkg-config to some extent) -dnl - rm -f conf.glibtest - AC_TRY_RUN([ -#include -#include -#include - -int -main () -{ - int major, minor, micro; - char *tmp_version; - - system ("touch conf.glibtest"); - - /* HP/UX 9 (%@#!) writes to sscanf strings */ - tmp_version = g_strdup("$min_glib_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { - printf("%s, bad version string\n", "$min_glib_version"); - exit(1); - } - - if ((glib_major_version != $glib_config_major_version) || - (glib_minor_version != $glib_config_minor_version) || - (glib_micro_version != $glib_config_micro_version)) - { - printf("\n*** 'pkg-config --modversion glib-2.0' returned %d.%d.%d, but GLIB (%d.%d.%d)\n", - $glib_config_major_version, $glib_config_minor_version, $glib_config_micro_version, - glib_major_version, glib_minor_version, glib_micro_version); - printf ("*** was found! If pkg-config was correct, then it is best\n"); - printf ("*** to remove the old version of GLib. You may also be able to fix the error\n"); - printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); - printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); - printf("*** required on your system.\n"); - printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); - printf("*** to point to the correct configuration files\n"); - } - else if ((glib_major_version != GLIB_MAJOR_VERSION) || - (glib_minor_version != GLIB_MINOR_VERSION) || - (glib_micro_version != GLIB_MICRO_VERSION)) - { - printf("*** GLIB header files (version %d.%d.%d) do not match\n", - GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION, GLIB_MICRO_VERSION); - printf("*** library (version %d.%d.%d)\n", - glib_major_version, glib_minor_version, glib_micro_version); - } - else - { - if ((glib_major_version > major) || - ((glib_major_version == major) && (glib_minor_version > minor)) || - ((glib_major_version == major) && (glib_minor_version == minor) && (glib_micro_version >= micro))) - { - return 0; - } - else - { - printf("\n*** An old version of GLIB (%d.%d.%d) was found.\n", - glib_major_version, glib_minor_version, glib_micro_version); - printf("*** You need a version of GLIB newer than %d.%d.%d. The latest version of\n", - major, minor, micro); - printf("*** GLIB is always available from ftp://ftp.gtk.org.\n"); - printf("***\n"); - printf("*** If you have already installed a sufficiently new version, this error\n"); - printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); - printf("*** being found. The easiest way to fix this is to remove the old version\n"); - printf("*** of GLIB, but you can also set the PKG_CONFIG environment to point to the\n"); - printf("*** correct copy of pkg-config. (In this case, you will have to\n"); - printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); - printf("*** so that the correct libraries are found at run-time))\n"); - } - } - return 1; -} -],, no_glib=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - if test "x$no_glib" = x ; then - AC_MSG_RESULT(yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)) - ifelse([$2], , :, [$2]) - else - AC_MSG_RESULT(no) - if test "$PKG_CONFIG" = "no" ; then - echo "*** A new enough version of pkg-config was not found." - echo "*** See http://www.freedesktop.org/software/pkgconfig/" - else - if test -f conf.glibtest ; then - : - else - echo "*** Could not run GLIB test program, checking why..." - ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $GLIB_CFLAGS" - LIBS="$LIBS $GLIB_LIBS" - AC_TRY_LINK([ -#include -#include -], [ return ((glib_major_version) || (glib_minor_version) || (glib_micro_version)); ], - [ echo "*** The test program compiled, but did not run. This usually means" - echo "*** that the run-time linker is not finding GLIB or finding the wrong" - echo "*** version of GLIB. If it is not finding GLIB, you'll need to set your" - echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" - echo "*** to the installed location Also, make sure you have run ldconfig if that" - echo "*** is required on your system" - echo "***" - echo "*** If you have an old version installed, it is best to remove it, although" - echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ], - [ echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occurred. This usually means GLIB is incorrectly installed."]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - GLIB_CFLAGS="" - GLIB_LIBS="" - GLIB_GENMARSHAL="" - GOBJECT_QUERY="" - GLIB_MKENUMS="" - ifelse([$3], , :, [$3]) - fi - AC_SUBST(GLIB_CFLAGS) - AC_SUBST(GLIB_LIBS) - AC_SUBST(GLIB_GENMARSHAL) - AC_SUBST(GOBJECT_QUERY) - AC_SUBST(GLIB_MKENUMS) - rm -f conf.glibtest -]) diff --git a/m4/glibtests.m4 b/m4/glibtests.m4 deleted file mode 100644 index 7d5920a4..00000000 --- a/m4/glibtests.m4 +++ /dev/null @@ -1,28 +0,0 @@ -dnl GLIB_TESTS -dnl - -AC_DEFUN([GLIB_TESTS], -[ - AC_ARG_ENABLE(installed-tests, - AS_HELP_STRING([--enable-installed-tests], - [Enable installation of some test cases]), - [case ${enableval} in - yes) ENABLE_INSTALLED_TESTS="1" ;; - no) ENABLE_INSTALLED_TESTS="" ;; - *) AC_MSG_ERROR([bad value ${enableval} for --enable-installed-tests]) ;; - esac]) - AM_CONDITIONAL([ENABLE_INSTALLED_TESTS], test "$ENABLE_INSTALLED_TESTS" = "1") - AC_ARG_ENABLE(always-build-tests, - AS_HELP_STRING([--enable-always-build-tests], - [Enable always building tests during 'make all']), - [case ${enableval} in - yes) ENABLE_ALWAYS_BUILD_TESTS="1" ;; - no) ENABLE_ALWAYS_BUILD_TESTS="" ;; - *) AC_MSG_ERROR([bad value ${enableval} for --enable-always-build-tests]) ;; - esac]) - AM_CONDITIONAL([ENABLE_ALWAYS_BUILD_TESTS], test "$ENABLE_ALWAYS_BUILD_TESTS" = "1") - if test "$ENABLE_INSTALLED_TESTS" = "1"; then - AC_SUBST(installed_test_metadir, [${datadir}/installed-tests/]AC_PACKAGE_NAME) - AC_SUBST(installed_testdir, [${libexecdir}/installed-tests/]AC_PACKAGE_NAME) - fi -]) diff --git a/m4/libgcrypt.m4 b/m4/libgcrypt.m4 deleted file mode 100644 index c67cfece..00000000 --- a/m4/libgcrypt.m4 +++ /dev/null @@ -1,143 +0,0 @@ -# libgcrypt.m4 - Autoconf macros to detect libgcrypt -# Copyright (C) 2002, 2003, 2004, 2011, 2014 g10 Code GmbH -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This file is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Last-changed: 2014-10-02 - - -dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) -dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS. -dnl MINIMUN-VERSION is a string with the version number optionalliy prefixed -dnl with the API version to also check the API compatibility. Example: -dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed -dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using -dnl this features allows to prevent build against newer versions of libgcrypt -dnl with a changed API. -dnl -dnl If a prefix option is not used, the config script is first -dnl searched in $SYSROOT/bin and then along $PATH. If the used -dnl config script does not match the host specification the script -dnl is added to the gpg_config_script_warn variable. -dnl -AC_DEFUN([AM_PATH_LIBGCRYPT], -[ AC_REQUIRE([AC_CANONICAL_HOST]) - AC_ARG_WITH(libgcrypt-prefix, - AC_HELP_STRING([--with-libgcrypt-prefix=PFX], - [prefix where LIBGCRYPT is installed (optional)]), - libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="") - if test x"${LIBGCRYPT_CONFIG}" = x ; then - if test x"${libgcrypt_config_prefix}" != x ; then - LIBGCRYPT_CONFIG="${libgcrypt_config_prefix}/bin/libgcrypt-config" - else - case "${SYSROOT}" in - /*) - if test -x "${SYSROOT}/bin/libgcrypt-config" ; then - LIBGCRYPT_CONFIG="${SYSROOT}/bin/libgcrypt-config" - fi - ;; - '') - ;; - *) - AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.]) - ;; - esac - fi - fi - - AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no) - tmp=ifelse([$1], ,1:1.2.0,$1) - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_libgcrypt_api=0 - min_libgcrypt_version="$tmp" - fi - - AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version) - ok=no - if test "$LIBGCRYPT_CONFIG" != "no" ; then - req_major=`echo $min_libgcrypt_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` - req_minor=`echo $min_libgcrypt_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` - req_micro=`echo $min_libgcrypt_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` - libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version` - major=`echo $libgcrypt_config_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` - minor=`echo $libgcrypt_config_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'` - micro=`echo $libgcrypt_config_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'` - if test "$major" -gt "$req_major"; then - ok=yes - else - if test "$major" -eq "$req_major"; then - if test "$minor" -gt "$req_minor"; then - ok=yes - else - if test "$minor" -eq "$req_minor"; then - if test "$micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - AC_MSG_RESULT([yes ($libgcrypt_config_version)]) - else - AC_MSG_RESULT(no) - fi - if test $ok = yes; then - # If we have a recent libgcrypt, we should also check that the - # API is compatible - if test "$req_libgcrypt_api" -gt 0 ; then - tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0` - if test "$tmp" -gt 0 ; then - AC_MSG_CHECKING([LIBGCRYPT API version]) - if test "$req_libgcrypt_api" -eq "$tmp" ; then - AC_MSG_RESULT([okay]) - else - ok=no - AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp]) - fi - fi - fi - fi - if test $ok = yes; then - LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags` - LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs` - ifelse([$2], , :, [$2]) - libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none` - if test x"$libgcrypt_config_host" != xnone ; then - if test x"$libgcrypt_config_host" != x"$host" ; then - AC_MSG_WARN([[ -*** -*** The config script $LIBGCRYPT_CONFIG was -*** built for $libgcrypt_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-libgcrypt-prefix -*** to specify a matching config script or use \$SYSROOT. -***]]) - gpg_config_script_warn="$gpg_config_script_warn libgcrypt" - fi - fi - else - LIBGCRYPT_CFLAGS="" - LIBGCRYPT_LIBS="" - ifelse([$3], , :, [$3]) - fi - AC_SUBST(LIBGCRYPT_CFLAGS) - AC_SUBST(LIBGCRYPT_LIBS) -]) diff --git a/m4/libotr.m4 b/m4/libotr.m4 deleted file mode 100644 index 80b25f86..00000000 --- a/m4/libotr.m4 +++ /dev/null @@ -1,134 +0,0 @@ -dnl -dnl Off-the-Record Messaging library -dnl Copyright (C) 2004-2007 Ian Goldberg, Chris Alexander, Nikita Borisov -dnl -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the terms of version 2.1 of the GNU Lesser General -dnl Public License as published by the Free Software Foundation. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Lesser General Public License for more details. -dnl -dnl You should have received a copy of the GNU Lesser General Public -dnl License along with this library; if not, write to the Free Software -dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -dnl - -dnl AM_PATH_LIBOTR([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) -dnl Test for libotr, and define LIBOTR_CFLAGS and LIBOTR_LIBS as appropriate. -dnl enables arguments --with-libotr-prefix= -dnl --with-libotr-inc-prefix= -dnl -dnl You must already have found libgcrypt with AM_PATH_LIBGCRYPT -dnl -dnl Adapted from alsa.m4, originally by -dnl Richard Boulton -dnl Christopher Lansdown -dnl Jaroslav Kysela - -AC_DEFUN([AM_PATH_LIBOTR], -[dnl Save the original CFLAGS, LDFLAGS, and LIBS -libotr_save_CFLAGS="$CFLAGS" -libotr_save_LDFLAGS="$LDFLAGS" -libotr_save_LIBS="$LIBS" -libotr_found=yes - -dnl -dnl Get the cflags and libraries for libotr -dnl -AC_ARG_WITH(libotr-prefix, -[ --with-libotr-prefix=PFX Prefix where libotr is installed(optional)], -[libotr_prefix="$withval"], [libotr_prefix=""]) - -AC_ARG_WITH(libotr-inc-prefix, -[ --with-libotr-inc-prefix=PFX Prefix where libotr includes are (optional)], -[libotr_inc_prefix="$withval"], [libotr_inc_prefix=""]) - -dnl Add any special include directories -AC_MSG_CHECKING(for libotr CFLAGS) -if test "$libotr_inc_prefix" != "" ; then - LIBOTR_CFLAGS="$LIBOTR_CFLAGS -I$libotr_inc_prefix" - CFLAGS="$CFLAGS $LIBOTR_CFLAGS" -fi -AC_MSG_RESULT($LIBOTR_CFLAGS) - -dnl add any special lib dirs -AC_MSG_CHECKING(for libotr LIBS) -if test "$libotr_prefix" != "" ; then - LIBOTR_LIBS="$LIBOTR_LIBS -L$libotr_prefix" - LDFLAGS="$LDFLAGS $LIBOTR_LIBS" -fi - -dnl add the libotr library -LIBOTR_LIBS="$LIBOTR_LIBS -lotr" -LIBS="$LIBOTR_LIBS $LIBS" -AC_MSG_RESULT($LIBOTR_LIBS) - -dnl Check for a working version of libotr that is of the right version. -min_libotr_version=ifelse([$1], ,3.0.0,$1) -no_libotr="" - libotr_min_major_version=`echo $min_libotr_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - libotr_min_minor_version=`echo $min_libotr_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - libotr_min_sub_version=`echo $min_libotr_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` -AC_MSG_CHECKING(for libotr headers version $libotr_min_major_version.x >= $min_libotr_version) - -AC_LANG_SAVE -AC_LANG_C -AC_TRY_COMPILE([ -#include -#include -], [ -# if(OTRL_VERSION_MAJOR != $libotr_min_major_version) -# error not present -# else - -# if(OTRL_VERSION_MINOR > $libotr_min_minor_version) - exit(0); -# else -# if(OTRL_VERSION_MINOR < $libotr_min_minor_version) -# error not present -# endif - -# if(OTRL_VERSION_SUB < $libotr_min_sub_version) -# error not present -# endif -# endif -# endif -exit(0); -], - [AC_MSG_RESULT(found.)], - [AC_MSG_RESULT(not present.) - ifelse([$3], , [AC_MSG_ERROR(Sufficiently new version of libotr not found.)]) - libotr_found=no] -) -AC_LANG_RESTORE - -dnl Now that we know that we have the right version, let's see if we have the library and not just the headers. -AC_CHECK_LIB([otr], [otrl_message_receiving],, - [ifelse([$3], , [AC_MSG_ERROR(No linkable libotr was found.)]) - libotr_found=no], - $LIBGCRYPT_LIBS -) - -LDFLAGS="$libotr_save_LDFLAGS" -LIBS="$libotr_save_LIBS" - -if test "x$libotr_found" = "xyes" ; then - ifelse([$2], , :, [$2]) -else - LIBOTR_CFLAGS="" - LIBOTR_LIBS="" - ifelse([$3], , :, [$3]) -fi - -dnl That should be it. Now just export our symbols: -AC_SUBST(LIBOTR_CFLAGS) -AC_SUBST(LIBOTR_LIBS) -]) - diff --git a/m4/pkg.m4 b/m4/pkg.m4 deleted file mode 100644 index 13a88901..00000000 --- a/m4/pkg.m4 +++ /dev/null @@ -1,275 +0,0 @@ -# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -# serial 12 (pkg-config-0.29.2) - -dnl Copyright © 2004 Scott James Remnant . -dnl Copyright © 2012-2015 Dan Nicholson -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2 of the License, or -dnl (at your option) any later version. -dnl -dnl This program is distributed in the hope that it will be useful, but -dnl WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl As a special exception to the GNU General Public License, if you -dnl distribute this file as part of a program that contains a -dnl configuration script generated by Autoconf, you may include it under -dnl the same distribution terms that you use for the rest of that -dnl program. - -dnl PKG_PREREQ(MIN-VERSION) -dnl ----------------------- -dnl Since: 0.29 -dnl -dnl Verify that the version of the pkg-config macros are at least -dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's -dnl installed version of pkg-config, this checks the developer's version -dnl of pkg.m4 when generating configure. -dnl -dnl To ensure that this macro is defined, also add: -dnl m4_ifndef([PKG_PREREQ], -dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) -dnl -dnl See the "Since" comment for each macro you use to see what version -dnl of the macros you require. -m4_defun([PKG_PREREQ], -[m4_define([PKG_MACROS_VERSION], [0.29.2]) -m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, - [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) -])dnl PKG_PREREQ - -dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) -dnl ---------------------------------- -dnl Since: 0.16 -dnl -dnl Search for the pkg-config tool and set the PKG_CONFIG variable to -dnl first found in the path. Checks that the version of pkg-config found -dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is -dnl used since that's the first version where most current features of -dnl pkg-config existed. -AC_DEFUN([PKG_PROG_PKG_CONFIG], -[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) -m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) -m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) -AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) -AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) -AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=m4_default([$1], [0.9.0]) - AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - PKG_CONFIG="" - fi -fi[]dnl -])dnl PKG_PROG_PKG_CONFIG - -dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------------------------------- -dnl Since: 0.18 -dnl -dnl Check to see whether a particular set of modules exists. Similar to -dnl PKG_CHECK_MODULES(), but does not set variables or print errors. -dnl -dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -dnl only at the first occurence in configure.ac, so if the first place -dnl it's called might be skipped (such as if it is within an "if", you -dnl have to call PKG_CHECK_EXISTS manually -AC_DEFUN([PKG_CHECK_EXISTS], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -if test -n "$PKG_CONFIG" && \ - AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then - m4_default([$2], [:]) -m4_ifvaln([$3], [else - $3])dnl -fi]) - -dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) -dnl --------------------------------------------- -dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting -dnl pkg_failed based on the result. -m4_define([_PKG_CONFIG], -[if test -n "$$1"; then - pkg_cv_[]$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes ], - [pkg_failed=yes]) - else - pkg_failed=untried -fi[]dnl -])dnl _PKG_CONFIG - -dnl _PKG_SHORT_ERRORS_SUPPORTED -dnl --------------------------- -dnl Internal check to see if pkg-config supports short errors. -AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi[]dnl -])dnl _PKG_SHORT_ERRORS_SUPPORTED - - -dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl -------------------------------------------------------------- -dnl Since: 0.4.0 -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES might not happen, you should be sure to include an -dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -AC_DEFUN([PKG_CHECK_MODULES], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl -AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl - -pkg_failed=no -AC_MSG_CHECKING([for $2]) - -_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) -_PKG_CONFIG([$1][_LIBS], [libs], [$2]) - -m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS -and $1[]_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details.]) - -if test $pkg_failed = yes; then - AC_MSG_RESULT([no]) - _PKG_SHORT_ERRORS_SUPPORTED - if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` - else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - - m4_default([$4], [AC_MSG_ERROR( -[Package requirements ($2) were not met: - -$$1_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -_PKG_TEXT])[]dnl - ]) -elif test $pkg_failed = untried; then - AC_MSG_RESULT([no]) - m4_default([$4], [AC_MSG_FAILURE( -[The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -_PKG_TEXT - -To get pkg-config, see .])[]dnl - ]) -else - $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS - $1[]_LIBS=$pkg_cv_[]$1[]_LIBS - AC_MSG_RESULT([yes]) - $3 -fi[]dnl -])dnl PKG_CHECK_MODULES - - -dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl --------------------------------------------------------------------- -dnl Since: 0.29 -dnl -dnl Checks for existence of MODULES and gathers its build flags with -dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags -dnl and VARIABLE-PREFIX_LIBS from --libs. -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to -dnl include an explicit call to PKG_PROG_PKG_CONFIG in your -dnl configure.ac. -AC_DEFUN([PKG_CHECK_MODULES_STATIC], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -_save_PKG_CONFIG=$PKG_CONFIG -PKG_CONFIG="$PKG_CONFIG --static" -PKG_CHECK_MODULES($@) -PKG_CONFIG=$_save_PKG_CONFIG[]dnl -])dnl PKG_CHECK_MODULES_STATIC - - -dnl PKG_INSTALLDIR([DIRECTORY]) -dnl ------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable pkgconfigdir as the location where a module -dnl should install pkg-config .pc files. By default the directory is -dnl $libdir/pkgconfig, but the default can be changed by passing -dnl DIRECTORY. The user can override through the --with-pkgconfigdir -dnl parameter. -AC_DEFUN([PKG_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([pkgconfigdir], - [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, - [with_pkgconfigdir=]pkg_default) -AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_INSTALLDIR - - -dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) -dnl -------------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable noarch_pkgconfigdir as the location where a -dnl module should install arch-independent pkg-config .pc files. By -dnl default the directory is $datadir/pkgconfig, but the default can be -dnl changed by passing DIRECTORY. The user can override through the -dnl --with-noarch-pkgconfigdir parameter. -AC_DEFUN([PKG_NOARCH_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([noarch-pkgconfigdir], - [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, - [with_noarch_pkgconfigdir=]pkg_default) -AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_NOARCH_INSTALLDIR - - -dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, -dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------- -dnl Since: 0.28 -dnl -dnl Retrieves the value of the pkg-config variable for the given module. -AC_DEFUN([PKG_CHECK_VAR], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl - -_PKG_CONFIG([$1], [variable="][$3]["], [$2]) -AS_VAR_COPY([$1], [pkg_cv_][$1]) - -AS_VAR_IF([$1], [""], [$5], [$4])dnl -])dnl PKG_CHECK_VAR diff --git a/scripts/Makefile.am b/scripts/Makefile.am deleted file mode 100644 index 42b3ea7b..00000000 --- a/scripts/Makefile.am +++ /dev/null @@ -1,18 +0,0 @@ -SUBDIRS = examples - -scriptdir = $(datadir)/irssi/scripts - -script_DATA = \ - autoop.pl \ - autorejoin.pl \ - buf.pl \ - dns.pl \ - kills.pl \ - mail.pl \ - mlock.pl \ - quitmsg.pl \ - scriptassist.pl \ - usercount.pl - -EXTRA_DIST = $(script_DATA) \ - meson.build diff --git a/scripts/examples/Makefile.am b/scripts/examples/Makefile.am deleted file mode 100644 index c8d8c8e0..00000000 --- a/scripts/examples/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -scriptdir = $(datadir)/irssi/scripts - -script_DATA = \ - command.pl \ - msg-event.pl \ - redirect.pl - -EXTRA_DIST = $(script_DATA) diff --git a/src/Makefile.am b/src/Makefile.am deleted file mode 100644 index 83fb562f..00000000 --- a/src/Makefile.am +++ /dev/null @@ -1,27 +0,0 @@ -if BUILD_TEXTUI -TEXTUI=fe-text -endif - -if BUILD_IRSSIBOT -BOTUI=fe-none -endif - -if BUILD_IRSSIFUZZER -FUZZERUI=fe-fuzz -endif - -if HAVE_PERL -PERLDIR=perl -endif - -if HAVE_OTR -OTRDIR=otr -endif - -pkginc_srcdir=$(pkgincludedir)/src -pkginc_src_HEADERS = \ - common.h - -SUBDIRS = lib-config core irc fe-common $(PERLDIR) $(OTRDIR) $(TEXTUI) $(BOTUI) $(FUZZERUI) - -EXTRA_DIST = meson.build diff --git a/src/core/Makefile.am b/src/core/Makefile.am deleted file mode 100644 index 493c42b2..00000000 --- a/src/core/Makefile.am +++ /dev/null @@ -1,122 +0,0 @@ -noinst_LIBRARIES = libcore.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) \ - -DSYSCONFDIR=\""$(sysconfdir)"\" \ - -DMODULEDIR=\""$(libdir)/irssi/modules"\" - -if USE_GREGEX -regex_impl=iregex-gregex.c -else -regex_impl=iregex-regexh.c -endif - -libcore_a_SOURCES = \ - args.c \ - channels.c \ - channels-setup.c \ - commands.c \ - chat-commands.c \ - chat-protocols.c \ - chatnets.c \ - core.c \ - expandos.c \ - ignore.c \ - levels.c \ - line-split.c \ - log.c \ - log-away.c \ - masks.c \ - misc.c \ - modules.c \ - modules-load.c \ - net-disconnect.c \ - net-nonblock.c \ - net-sendbuffer.c \ - network.c \ - network-openssl.c \ - nicklist.c \ - nickmatch-cache.c \ - pidwait.c \ - queries.c \ - rawlog.c \ - recode.c \ - refstrings.c \ - servers.c \ - servers-reconnect.c \ - servers-setup.c \ - session.c \ - settings.c \ - signals.c \ - special-vars.c \ - utf8.c \ - $(regex_impl) \ - wcwidth.c \ - wcwidth-wrapper.c \ - tls.c \ - write-buffer.c - -if HAVE_CAPSICUM -libcore_a_SOURCES += \ - capsicum.c -endif - -structure_headers = \ - channel-rec.h \ - channel-setup-rec.h \ - chatnet-rec.h \ - query-rec.h \ - server-rec.h \ - server-setup-rec.h \ - server-connect-rec.h \ - window-item-rec.h - -pkginc_coredir=$(pkgincludedir)/src/core -pkginc_core_HEADERS = \ - args.h \ - capsicum.h \ - channels.h \ - channels-setup.h \ - commands.h \ - chat-protocols.h \ - chatnets.h \ - core.h \ - expandos.h \ - ignore.h \ - levels.h \ - line-split.h \ - log.h \ - masks.h \ - misc.h \ - module.h \ - modules.h \ - modules-load.h \ - net-disconnect.h \ - net-nonblock.h \ - net-sendbuffer.h \ - network.h \ - network-openssl.h \ - nick-rec.h \ - nicklist.h \ - nickmatch-cache.h \ - pidwait.h \ - queries.h \ - rawlog.h \ - recode.h \ - refstrings.h \ - servers.h \ - servers-reconnect.h \ - servers-setup.h \ - session.h \ - settings.h \ - signals.h \ - special-vars.h \ - utf8.h \ - iregex.h \ - window-item-def.h \ - tls.h \ - write-buffer.h \ - $(structure_headers) - -EXTRA_DIST = meson.build diff --git a/src/fe-common/Makefile.am b/src/fe-common/Makefile.am deleted file mode 100644 index f4b78b34..00000000 --- a/src/fe-common/Makefile.am +++ /dev/null @@ -1,3 +0,0 @@ -SUBDIRS = core irc - -EXTRA_DIST = meson.build diff --git a/src/fe-common/core/Makefile.am b/src/fe-common/core/Makefile.am deleted file mode 100644 index 01e934e0..00000000 --- a/src/fe-common/core/Makefile.am +++ /dev/null @@ -1,73 +0,0 @@ -noinst_LIBRARIES = libfe_common_core.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) \ - -DHELPDIR=\""$(datadir)/irssi/help"\" \ - -DTHEMESDIR=\""$(datadir)/irssi/themes"\" - -libfe_common_core_a_SOURCES = \ - chat-completion.c \ - command-history.c \ - completion.c \ - fe-channels.c \ - fe-common-core.c \ - fe-core-commands.c \ - fe-exec.c \ - fe-expandos.c \ - fe-help.c \ - fe-ignore.c \ - fe-ignore-messages.c \ - fe-log.c \ - fe-messages.c \ - fe-modules.c \ - fe-queries.c \ - fe-server.c \ - fe-settings.c \ - fe-tls.c \ - formats.c \ - hilight-text.c \ - keyboard.c \ - module-formats.c \ - printtext.c \ - fe-recode.c \ - themes.c \ - window-activity.c \ - window-commands.c \ - window-items.c \ - windows-layout.c \ - fe-windows.c - -if HAVE_CAPSICUM -libfe_common_core_a_SOURCES += \ - fe-capsicum.c -endif - -pkginc_fe_common_coredir=$(pkgincludedir)/src/fe-common/core -pkginc_fe_common_core_HEADERS = \ - command-history.h \ - chat-completion.h \ - completion.h \ - fe-capsicum.h \ - fe-channels.h \ - fe-common-core.h \ - fe-core-commands.h \ - fe-exec.h \ - fe-messages.h \ - fe-queries.h \ - fe-settings.h \ - fe-tls.h \ - formats.h \ - hilight-text.h \ - keyboard.h \ - module-formats.h \ - module.h \ - printtext.h \ - fe-recode.h \ - themes.h \ - window-activity.h \ - window-items.h \ - windows-layout.h \ - fe-windows.h - -EXTRA_DIST = meson.build diff --git a/src/fe-common/irc/Makefile.am b/src/fe-common/irc/Makefile.am deleted file mode 100644 index 8a04bee4..00000000 --- a/src/fe-common/irc/Makefile.am +++ /dev/null @@ -1,42 +0,0 @@ -SUBDIRS = dcc notifylist - -noinst_LIBRARIES = libfe_common_irc.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) \ - -DHELPDIR=\""$(datadir)/irssi/help"\" \ - -DSYSCONFDIR=\""$(sysconfdir)"\" - -real_sources = \ - fe-irc-channels.c \ - fe-irc-commands.c \ - fe-irc-messages.c \ - fe-irc-queries.c \ - fe-irc-server.c \ - fe-ircnet.c \ - fe-ctcp.c \ - fe-events.c \ - fe-events-numeric.c \ - fe-modes.c \ - fe-netjoin.c \ - fe-netsplit.c \ - fe-common-irc.c \ - fe-whois.c \ - fe-sasl.c \ - fe-cap.c \ - irc-completion.c \ - module-formats.c - -libfe_common_irc_a_SOURCES = \ - $(real_sources) \ - irc-modules.c - -pkginc_fe_common_ircdir=$(pkgincludedir)/src/fe-common/irc -pkginc_fe_common_irc_HEADERS = \ - fe-irc-server.h \ - fe-irc-channels.h \ - module.h \ - module-formats.h - -EXTRA_DIST = meson.build diff --git a/src/fe-common/irc/dcc/Makefile.am b/src/fe-common/irc/dcc/Makefile.am deleted file mode 100644 index feee349d..00000000 --- a/src/fe-common/irc/dcc/Makefile.am +++ /dev/null @@ -1,24 +0,0 @@ -noinst_LIBRARIES = libfe_irc_dcc.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) \ - -DHELPDIR=\""$(datadir)/irssi/help"\" \ - -DSYSCONFDIR=\""$(sysconfdir)"\" - -libfe_irc_dcc_a_SOURCES = \ - fe-dcc.c \ - fe-dcc-chat.c \ - fe-dcc-chat-messages.c \ - fe-dcc-get.c \ - fe-dcc-send.c \ - module-formats.c \ - fe-dcc-server.c - -pkginc_fe_common_irc_dccdir=$(pkgincludedir)/src/fe-common/irc/dcc -pkginc_fe_common_irc_dcc_HEADERS = \ - module.h \ - module-formats.h \ - fe-dcc.h - -EXTRA_DIST = meson.build diff --git a/src/fe-common/irc/notifylist/Makefile.am b/src/fe-common/irc/notifylist/Makefile.am deleted file mode 100644 index 5eecb5fb..00000000 --- a/src/fe-common/irc/notifylist/Makefile.am +++ /dev/null @@ -1,18 +0,0 @@ -noinst_LIBRARIES = libfe_irc_notifylist.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) \ - -DHELPDIR=\""$(datadir)/irssi/help"\" \ - -DSYSCONFDIR=\""$(sysconfdir)"\" - -libfe_irc_notifylist_a_SOURCES = \ - fe-notifylist.c \ - module-formats.c - -pkginc_fe_common_irc_notifylistdir=$(pkgincludedir)/src/fe-common/irc/notifylist -pkginc_fe_common_irc_notifylist_HEADERS = \ - module.h \ - module-formats.h - -EXTRA_DIST = meson.build diff --git a/src/fe-fuzz/Makefile.am b/src/fe-fuzz/Makefile.am deleted file mode 100644 index 3efa83b6..00000000 --- a/src/fe-fuzz/Makefile.am +++ /dev/null @@ -1,40 +0,0 @@ -SUBDIRS = irc fe-common - -bin_PROGRAMS = irssi-fuzz server-fuzz - -# Force link with CXX for libfuzzer support -CCLD=$(CXX) $(CXXFLAGS) - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -irssi_fuzz_DEPENDENCIES = @COMMON_LIBS@ - -irssi_fuzz_LDADD = \ - @COMMON_LIBS@ \ - @PROG_LIBS@ \ - $(FUZZER_LIBS) - -irssi_fuzz_SOURCES = \ - irssi.c \ - null-logger.c \ - ../fe-text/module-formats.c - -server_fuzz_DEPENDENCIES = @COMMON_LIBS@ - -server_fuzz_LDADD = \ - @COMMON_LIBS@ \ - @PROG_LIBS@ \ - $(FUZZER_LIBS) - -server_fuzz_SOURCES = \ - server.c \ - null-logger.c \ - ../fe-text/module-formats.c - -noinst_HEADERS = \ - null-logger.h \ - ../fe-text/module-formats.h - -EXTRA_DIST = meson.build diff --git a/src/fe-fuzz/fe-common/Makefile.am b/src/fe-fuzz/fe-common/Makefile.am deleted file mode 100644 index 74f13119..00000000 --- a/src/fe-fuzz/fe-common/Makefile.am +++ /dev/null @@ -1,3 +0,0 @@ -SUBDIRS = core - -EXTRA_DIST = meson.build diff --git a/src/fe-fuzz/fe-common/core/Makefile.am b/src/fe-fuzz/fe-common/core/Makefile.am deleted file mode 100644 index 8f6ae477..00000000 --- a/src/fe-fuzz/fe-common/core/Makefile.am +++ /dev/null @@ -1,33 +0,0 @@ -bin_PROGRAMS = theme-load-fuzz - -# Force link with CXX for libfuzzer support -CCLD=$(CXX) $(CXXFLAGS) - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -LDADD = \ - ../../../irc/libirc.a \ - ../../../irc/core/libirc_core.a \ - ../../../irc/dcc/libirc_dcc.a \ - ../../../irc/flood/libirc_flood.a \ - ../../../irc/notifylist/libirc_notifylist.a \ - ../../../fe-common/core/libfe_common_core.a \ - ../../../fe-common/irc/libfe_common_irc.a \ - ../../../fe-common/irc/dcc/libfe_irc_dcc.a \ - ../../../fe-common/irc/notifylist/libfe_irc_notifylist.a \ - ../../../core/libcore.a \ - ../../../lib-config/libirssi_config.a \ - @PROG_LIBS@ \ - $(FUZZER_LIBS) - -theme_load_fuzz_SOURCES = \ - ../../null-logger.c \ - theme-load.c \ - $(top_srcdir)/src/fe-text/module-formats.c - -noinst_HEADERS = \ - $(top_srcdir)/src/fe-text/module-formats.h - -EXTRA_DIST = meson.build diff --git a/src/fe-fuzz/irc/Makefile.am b/src/fe-fuzz/irc/Makefile.am deleted file mode 100644 index 74f13119..00000000 --- a/src/fe-fuzz/irc/Makefile.am +++ /dev/null @@ -1,3 +0,0 @@ -SUBDIRS = core - -EXTRA_DIST = meson.build diff --git a/src/fe-fuzz/irc/core/Makefile.am b/src/fe-fuzz/irc/core/Makefile.am deleted file mode 100644 index 9221e29e..00000000 --- a/src/fe-fuzz/irc/core/Makefile.am +++ /dev/null @@ -1,33 +0,0 @@ -bin_PROGRAMS = event-get-params-fuzz - -# Force link with CXX for libfuzzer support -CCLD=$(CXX) $(CXXFLAGS) - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -LDADD = \ - ../../../irc/libirc.a \ - ../../../irc/core/libirc_core.a \ - ../../../irc/dcc/libirc_dcc.a \ - ../../../irc/flood/libirc_flood.a \ - ../../../irc/notifylist/libirc_notifylist.a \ - ../../../fe-common/core/libfe_common_core.a \ - ../../../fe-common/irc/libfe_common_irc.a \ - ../../../fe-common/irc/dcc/libfe_irc_dcc.a \ - ../../../fe-common/irc/notifylist/libfe_irc_notifylist.a \ - ../../../core/libcore.a \ - ../../../lib-config/libirssi_config.a \ - @PROG_LIBS@ \ - $(FUZZER_LIBS) - -event_get_params_fuzz_SOURCES = \ - ../../null-logger.c \ - event-get-params.c \ - $(top_srcdir)/src/fe-text/module-formats.c - -noinst_HEADERS = \ - $(top_srcdir)/src/fe-text/module-formats.h - -EXTRA_DIST = meson.build diff --git a/src/fe-none/Makefile.am b/src/fe-none/Makefile.am deleted file mode 100644 index bbcd63f8..00000000 --- a/src/fe-none/Makefile.am +++ /dev/null @@ -1,21 +0,0 @@ -bin_PROGRAMS = botti - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -botti_DEPENDENCIES = @COMMON_NOUI_LIBS@ - -botti_LDADD = \ - @COMMON_NOUI_LIBS@ \ - @PERL_LINK_LIBS@ \ - @PERL_LINK_FLAGS@ \ - @PROG_LIBS@ - -botti_SOURCES = \ - irssi.c - -noinst_HEADERS = \ - module.h - -EXTRA_DIST = meson.build diff --git a/src/fe-text/Makefile.am b/src/fe-text/Makefile.am deleted file mode 100644 index d97cbfa5..00000000 --- a/src/fe-text/Makefile.am +++ /dev/null @@ -1,75 +0,0 @@ -bin_PROGRAMS = irssi - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -irssi_DEPENDENCIES = \ - @COMMON_LIBS@ \ - @PERL_LINK_LIBS@ \ - @PERL_FE_LINK_LIBS@ \ - @OTR_LINK_LIBS@ - -irssi_LDFLAGS = -export-dynamic - -irssi_LDADD = \ - @COMMON_LIBS@ \ - @PERL_LINK_LIBS@ \ - @PERL_FE_LINK_LIBS@ \ - @OTR_LINK_LIBS@ \ - @OTR_LINK_FLAGS@ \ - @PERL_LINK_FLAGS@ \ - @PROG_LIBS@ \ - @TEXTUI_LIBS@ - -terminfo_sources = \ - term-terminfo.c \ - terminfo-core.c - -use_term_sources = $(terminfo_sources) - -irssi_SOURCES = \ - gui-entry.c \ - gui-expandos.c \ - gui-printtext.c \ - gui-readline.c \ - gui-windows.c \ - lastlog.c \ - mainwindows.c \ - mainwindow-activity.c \ - mainwindows-layout.c \ - statusbar.c \ - statusbar-config.c \ - statusbar-items.c \ - term.c \ - $(use_term_sources) \ - textbuffer.c \ - textbuffer-commands.c \ - textbuffer-view.c \ - textbuffer-formats.c \ - irssi.c \ - module-formats.c - -pkginc_fe_textdir=$(pkgincludedir)/src/fe-text -pkginc_fe_text_HEADERS = \ - gui-printtext.h \ - gui-windows.h \ - mainwindows.h \ - statusbar.h \ - statusbar-item.h \ - term.h \ - textbuffer.h \ - textbuffer-view.h \ - textbuffer-formats.h - -noinst_HEADERS = \ - gui-entry.h \ - gui-readline.h \ - statusbar-config.h \ - terminfo-core.h \ - module.h \ - module-formats.h - -EXTRA_DIST = \ - $(terminfo_sources) \ - meson.build diff --git a/src/irc/Makefile.am b/src/irc/Makefile.am deleted file mode 100644 index a271a891..00000000 --- a/src/irc/Makefile.am +++ /dev/null @@ -1,11 +0,0 @@ -if BUILD_IRSSIPROXY -PROXY=proxy -endif - -SUBDIRS = core dcc flood notifylist $(PROXY) - -noinst_LIBRARIES = libirc.a - -libirc_a_SOURCES = irc.c - -EXTRA_DIST = meson.build diff --git a/src/irc/core/Makefile.am b/src/irc/core/Makefile.am deleted file mode 100644 index 5881481b..00000000 --- a/src/irc/core/Makefile.am +++ /dev/null @@ -1,62 +0,0 @@ -noinst_LIBRARIES = libirc_core.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -DSYSCONFDIR=\""$(sysconfdir)"\" \ - $(GLIB_CFLAGS) - -libirc_core_a_SOURCES = \ - bans.c \ - ctcp.c \ - channels-query.c \ - channel-events.c \ - channel-rejoin.c \ - irc.c \ - irc-core.c \ - irc-channels.c \ - irc-channels-setup.c \ - irc-chatnets.c \ - irc-commands.c \ - irc-expandos.c \ - irc-masks.c \ - irc-nicklist.c \ - irc-queries.c \ - irc-servers.c \ - irc-servers-reconnect.c \ - irc-servers-setup.c \ - irc-session.c \ - irc-cap.c \ - sasl.c \ - lag.c \ - massjoin.c \ - modes.c \ - mode-lists.c \ - netsplit.c \ - servers-idle.c \ - servers-redirect.c - -pkginc_irc_coredir=$(pkgincludedir)/src/irc/core -pkginc_irc_core_HEADERS = \ - bans.h \ - ctcp.h \ - channel-events.h \ - channel-rejoin.h \ - irc.h \ - irc-channels.h \ - irc-chatnets.h \ - irc-commands.h \ - irc-masks.h \ - irc-nicklist.h \ - irc-queries.h \ - irc-servers.h \ - irc-servers-setup.h \ - irc-cap.h \ - sasl.h \ - modes.h \ - mode-lists.h \ - module.h \ - netsplit.h \ - servers-idle.h \ - servers-redirect.h - -EXTRA_DIST = meson.build diff --git a/src/irc/dcc/Makefile.am b/src/irc/dcc/Makefile.am deleted file mode 100644 index c5592f7f..00000000 --- a/src/irc/dcc/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -noinst_LIBRARIES = libirc_dcc.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -libirc_dcc_a_SOURCES = \ - dcc.c \ - dcc-chat.c \ - dcc-get.c \ - dcc-send.c \ - dcc-resume.c \ - dcc-autoget.c \ - dcc-queue.c \ - dcc-server.c - -pkginc_irc_dccdir=$(pkgincludedir)/src/irc/dcc -pkginc_irc_dcc_HEADERS = \ - dcc-rec.h \ - dcc-file-rec.h \ - dcc.h \ - dcc-file.h \ - dcc-chat.h \ - dcc-get.h \ - dcc-send.h \ - dcc-queue.h \ - module.h \ - dcc-server.h - -EXTRA_DIST = meson.build diff --git a/src/irc/flood/Makefile.am b/src/irc/flood/Makefile.am deleted file mode 100644 index 4b37cede..00000000 --- a/src/irc/flood/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -noinst_LIBRARIES = libirc_flood.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -libirc_flood_a_SOURCES = \ - autoignore.c \ - flood.c - -pkginc_irc_flooddir=$(pkgincludedir)/src/irc/flood -pkginc_irc_flood_HEADERS = \ - module.h - -EXTRA_DIST = meson.build diff --git a/src/irc/notifylist/Makefile.am b/src/irc/notifylist/Makefile.am deleted file mode 100644 index 3f913d58..00000000 --- a/src/irc/notifylist/Makefile.am +++ /dev/null @@ -1,20 +0,0 @@ -noinst_LIBRARIES = libirc_notifylist.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -libirc_notifylist_a_SOURCES = \ - notifylist.c \ - notify-commands.c \ - notify-ison.c \ - notify-setup.c \ - notify-whois.c - -pkginc_irc_notifylistdir=$(pkgincludedir)/src/irc/notifylist -pkginc_irc_notifylist_HEADERS = \ - notifylist.h \ - notify-setup.h \ - module.h - -EXTRA_DIST = meson.build diff --git a/src/irc/proxy/Makefile.am b/src/irc/proxy/Makefile.am deleted file mode 100644 index 437a6dc0..00000000 --- a/src/irc/proxy/Makefile.am +++ /dev/null @@ -1,28 +0,0 @@ -moduledir = $(libdir)/irssi/modules -module_LTLIBRARIES = libirc_proxy.la - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -libirc_proxy.a: - rm -f libirc_proxy.a - $(LN_S) .libs/libirc_proxy.a libirc_proxy.a - -libirc_proxy_la_LDFLAGS = -module -avoid-version - -libirc_proxy_la_DEPENDENCIES = libirc_proxy.a - -libirc_proxy_la_SOURCES = \ - proxy.c \ - dump.c \ - listen.c - -noinst_HEADERS = \ - module.h \ - proxy.h - -clean-generic: - rm -f libirc_proxy.a - -EXTRA_DIST = meson.build diff --git a/src/lib-config/Makefile.am b/src/lib-config/Makefile.am deleted file mode 100644 index cd319edb..00000000 --- a/src/lib-config/Makefile.am +++ /dev/null @@ -1,18 +0,0 @@ -noinst_LIBRARIES = libirssi_config.a - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -libirssi_config_a_SOURCES = \ - get.c \ - set.c \ - parse.c \ - write.c - -pkginc_lib_configdir=$(pkgincludedir)/src/lib-config -pkginc_lib_config_HEADERS = \ - iconfig.h \ - module.h - -EXTRA_DIST = meson.build diff --git a/src/otr/Makefile.am b/src/otr/Makefile.am deleted file mode 100644 index b9b82d9a..00000000 --- a/src/otr/Makefile.am +++ /dev/null @@ -1,40 +0,0 @@ -moduledir = $(libdir)/irssi/modules - -module_LTLIBRARIES = $(otr_module_lib) -noinst_LTLIBRARIES = $(otr_static_lib) - -EXTRA_LTLIBRARIES = \ - libotr_core.la \ - libotr_core_static.la - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) \ - $(OTR_CFLAGS) - -libotr_core_la_LDFLAGS = -module -avoid-version -rpath $(moduledir) -libotr_core_la_LIBADD = $(OTR_LDFLAGS) - -otr_sources = \ - key.c \ - otr-module.c \ - otr-formats.c \ - otr-ops.c \ - otr-fe.c \ - otr.c - -libotr_core_la_SOURCES = \ - $(otr_sources) - -libotr_core_static_la_SOURCES = \ - $(otr_sources) - -noinst_HEADERS = \ - irssi-otr.h \ - key.h \ - module.h \ - otr-formats.h \ - otr-fe.h \ - otr.h - -EXTRA_DIST = meson.build diff --git a/src/perl/Makefile.am b/src/perl/Makefile.am deleted file mode 100644 index ca81d3c6..00000000 --- a/src/perl/Makefile.am +++ /dev/null @@ -1,170 +0,0 @@ -moduledir = $(libdir)/irssi/modules - -perl_dirs = common irc ui textui - -module_LTLIBRARIES = $(perl_module_lib) $(perl_module_fe_lib) -noinst_LTLIBRARIES = $(perl_static_lib) $(perl_static_fe_lib) -EXTRA_LTLIBRARIES = \ - libperl_core.la libfe_perl.la \ - libperl_core_static.la libfe_perl_static.la - -libperl_core_la_LDFLAGS = -module -avoid-version -rpath $(moduledir) -libfe_perl_la_LDFLAGS = -module -avoid-version -rpath $(moduledir) - -perl-core.lo: irssi-core.pl.h -perl-signals.lo: perl-signals-list.h - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(builddir) \ - $(GLIB_CFLAGS) \ - -DSCRIPTDIR=\""$(datadir)/irssi/scripts"\" \ - -DPERL_USE_LIB=\""$(PERL_USE_LIB)"\" \ - -DPERL_STATIC_LIBS=$(PERL_STATIC_LIBS) \ - $(PERL_CFLAGS) - -perl_sources = \ - perl-core.c \ - perl-common.c \ - perl-signals.c \ - perl-sources.c - -perl_fe_sources = \ - module-formats.c \ - perl-fe.c - -noinst_HEADERS = \ - module.h \ - module-fe.h \ - module-formats.h \ - perl-core.h \ - perl-common.h \ - perl-signals.h \ - perl-sources.h - -libperl_core_la_SOURCES = \ - $(perl_sources) - -libperl_core_static_la_SOURCES = \ - $(perl_sources) - -libfe_perl_la_SOURCES = \ - $(perl_fe_sources) - -libfe_perl_static_la_SOURCES = \ - $(perl_fe_sources) - -perl-signals-list.h: $(top_srcdir)/docs/signals.txt $(srcdir)/get-signals.pl - cat $(top_srcdir)/docs/signals.txt | $(perlpath) $(srcdir)/get-signals.pl > perl-signals-list.h - -irssi-core.pl.h: irssi-core.pl - $(top_srcdir)/utils/file2header.sh $(srcdir)/irssi-core.pl irssi_core_code > irssi-core.pl.h - -common_sources = \ - common/Irssi.xs \ - common/Irssi.pm \ - common/Channel.xs \ - common/Core.xs \ - common/Expando.xs \ - common/Ignore.xs \ - common/Log.xs \ - common/Masks.xs \ - common/Query.xs \ - common/Rawlog.xs \ - common/Server.xs \ - common/Settings.xs \ - common/Makefile.PL.in \ - common/typemap \ - common/module.h - -irc_sources = \ - irc/Irc.xs \ - irc/Irc.pm \ - irc/Dcc.xs \ - irc/Channel.xs \ - irc/Ctcp.xs \ - irc/Query.xs \ - irc/Server.xs \ - irc/Modes.xs \ - irc/Netsplit.xs \ - irc/Notifylist.xs \ - irc/Client.xs \ - irc/Makefile.PL.in \ - irc/typemap \ - irc/module.h - -ui_sources = \ - ui/UI.xs \ - ui/UI.pm \ - ui/Formats.xs \ - ui/Themes.xs \ - ui/Window.xs \ - ui/Makefile.PL.in \ - ui/typemap \ - ui/module.h - -textui_sources = \ - textui/TextUI.xs \ - textui/TextUI.pm \ - textui/TextBuffer.xs \ - textui/TextBufferView.xs \ - textui/Statusbar.xs \ - textui/Makefile.PL.in \ - textui/wrapper_buffer_line.h \ - textui/typemap \ - textui/module.h - -EXTRA_DIST = \ - get-signals.pl \ - irssi-core.pl \ - Makefile_silent.pm \ - $(common_sources) \ - $(irc_sources) \ - $(ui_sources) \ - $(textui_sources) \ - meson.build \ - common/meson.build \ - irc/meson.build \ - ui/meson.build \ - textui/meson.build - -am_v_pl__show_gen = $(am__v_pl__show_gen_$(V)) -am_v_pl__hide_gen = $(am__v_pl__hide_gen_$(V)) -am__v_pl__show_gen_ = $(am__v_pl__show_gen_$(AM_DEFAULT_VERBOSITY)) -am__v_pl__hide_gen_ = $(am__v_pl__hide_gen_$(AM_DEFAULT_VERBOSITY)) -am__v_pl__show_gen_0 = echo " GEN " $$dir ; -am__v_pl__hide_gen_0 = > /dev/null -am__v_pl__show_gen_1 = -am__v_pl__hide_gen_1 = - -all-local: - $(AM_V_GEN)for dir in $(perl_dirs); do \ - cd $$dir && \ - if [ ! -f Makefile ]; then \ - $(am_v_pl__show_gen)$(perlpath) Makefile.PL $(PERL_MM_PARAMS) $(am_v_pl__hide_gen); \ - fi && \ - ($(MAKE) CC="$(CC)" CCFLAGS="$(PERL_CFLAGS) $(CFLAGS)" $(PERL_EXTRA_OPTS) || \ - $(MAKE) CC="$(CC)" CCFLAGS="$(PERL_CFLAGS) $(CFLAGS)" $(PERL_EXTRA_OPTS)) && \ - cd ..; \ - done - -install-exec-local: - for dir in $(perl_dirs); do \ - cd $$dir && $(MAKE) install && cd ..; \ - done - -clean-generic: - for dir in $(perl_dirs); do \ - cd $$dir; \ - $(MAKE) clean; \ - cd ..; \ - done - -distclean-generic: - for dir in $(perl_dirs); do \ - cd $$dir; \ - $(MAKE) realclean; rm -f Makefile.PL Makefile; \ - cd ..; \ - done - -libperl_core_la_LIBADD = $(PERL_LDFLAGS) diff --git a/src/perl/Makefile_silent.pm b/src/perl/Makefile_silent.pm deleted file mode 100644 index b5d71d66..00000000 --- a/src/perl/Makefile_silent.pm +++ /dev/null @@ -1,76 +0,0 @@ -push @ExtUtils::MakeMaker::Overridable, qw(pm_to_blib); -my $verb = $AM_DEFAULT_VERBOSITY; -{ package MY; - sub _center { - my $z = shift; - (length $z == 2 ? " $z " : length $z == 4 ? " $z " : " $z ").' ' - } - sub _silent_cmd { - my $z = shift; - $z =~ s{\t(?:- ?)?\K(?=\$\((?|(CC)CMD|(XS)UBPPRUN|(LD|MV|CHMOD)|(RM)_R?F|(CP)_NONEMPTY|FULL_(AR)\)))}{\$(PL_AM_V_$1)}g; - $z - } - sub c_o { _silent_cmd(shift->SUPER::c_o(@_)) } - sub xs_c { _silent_cmd(shift->SUPER::xs_c(@_)) } - sub xs_o { _silent_cmd(shift->SUPER::xs_o(@_)) } - sub dynamic_lib { _silent_cmd(shift->SUPER::dynamic_lib(@_)) } - sub static_lib { _silent_cmd(shift->SUPER::static_lib(@_)) } - sub dynamic_bs { - my $ret = shift->SUPER::dynamic_bs(@_); - $ret =~ s{Running Mkbootstrap for}{\$(PL_AM_V_BS_Text)}g; - _silent_cmd($ret) - } - sub pm_to_blib { - my $ret = shift->SUPER::pm_to_blib(@_); - $ret =~ s{^(\t(?:- ?)?)(?:\$\(NOECHO\) ?)?(.*-e ['"]pm_to_blib(.*\\\n)*.*)$}{$1\$(PL_AM_V_BLIB)$2\$(PL_AM_V_BLIB_Hide)}mg; - $ret - } - sub post_constants { - my $ret = shift->SUPER::post_constants(@_); - my @terse = qw(cc xs ld chmod cp ar blib); - my @silent = qw(mv rm); - my @special = qw(BLIB_Hide); - - #default verbosity from command line parameter - $ret .= " -AM_DEFAULT_VERBOSITY = @{[$verb ? 1 : 0]} -"; - #default options forward - $ret .= " -PL_AM_V_${_} = \$(pl_am__v_${_}_\$(V)) -pl_am__v_${_}_ = \$(pl_am__v_${_}_\$(AM_DEFAULT_VERBOSITY)) -" for @special, map uc, @terse, @silent; - - #quoted plain text needs extra quotes - $ret .= " -PL_AM_V_BS_Text = \"\$(pl_am__v_BS_Text_\$(V))\" -pl_am__v_BS_Text_ = \$(pl_am__v_BS_Text_\$(AM_DEFAULT_VERBOSITY)) -" - #hide pm_to_blib output -. " -pl_am__v_BLIB_Hide_0 = \$(DEV_NULL) -pl_am__v_BLIB_Hide_1 = -" - #text for Mkbootstrap -. " -pl_am__v_BS_Text_0 = \"@{[_center('BS')]}\" -pl_am__v_BS_Text_1 = \"Running Mkbootstrap for\" -"; - #"terse" output - $ret .= " -pl_am__v_${_}_0 = \$(NOECHO)echo \"@{[_center($_)]}\" \$\@; -" for map uc, @terse; - - #no output - $ret .= " -pl_am__v_${_}_0 = \$(NOECHO) -" for map uc, @silent; - - #in verbose mode the "terse" echo expands to nothing - $ret .= " -pl_am__v_${_}_1 = -" for map uc, @terse, @silent; - $ret - } -} -1; diff --git a/src/perl/common/Makefile.PL.in b/src/perl/common/Makefile.PL.in deleted file mode 100644 index 2b087d08..00000000 --- a/src/perl/common/Makefile.PL.in +++ /dev/null @@ -1,7 +0,0 @@ -use ExtUtils::MakeMaker;our $AM_DEFAULT_VERBOSITY='@AM_DEFAULT_VERBOSITY@';require "@top_srcdir@/src/perl/Makefile_silent.pm"; - -WriteMakefile('NAME' => 'Irssi', - 'LIBS' => '', - 'OBJECT' => '$(O_FILES)', - 'INC' => '-I../../.. @GLIB_CFLAGS@', - 'VERSION_FROM' => '@srcdir@/Irssi.pm'); diff --git a/src/perl/irc/Makefile.PL.in b/src/perl/irc/Makefile.PL.in deleted file mode 100644 index 561308c7..00000000 --- a/src/perl/irc/Makefile.PL.in +++ /dev/null @@ -1,8 +0,0 @@ -use ExtUtils::MakeMaker;our $AM_DEFAULT_VERBOSITY='@AM_DEFAULT_VERBOSITY@';require "@top_srcdir@/src/perl/Makefile_silent.pm"; - -WriteMakefile('NAME' => 'Irssi::Irc', - 'LIBS' => '', - 'OBJECT' => '$(O_FILES)', - 'TYPEMAPS' => ['../common/typemap'], - 'INC' => '-I../../.. @GLIB_CFLAGS@', - 'VERSION_FROM' => '@srcdir@/Irc.pm'); diff --git a/src/perl/textui/Makefile.PL.in b/src/perl/textui/Makefile.PL.in deleted file mode 100644 index 2b0a148a..00000000 --- a/src/perl/textui/Makefile.PL.in +++ /dev/null @@ -1,8 +0,0 @@ -use ExtUtils::MakeMaker;our $AM_DEFAULT_VERBOSITY='@AM_DEFAULT_VERBOSITY@';require "@top_srcdir@/src/perl/Makefile_silent.pm"; - -WriteMakefile('NAME' => 'Irssi::TextUI', - 'LIBS' => '', - 'OBJECT' => '$(O_FILES)', - 'TYPEMAPS' => ['../common/typemap', '../ui/typemap'], - 'INC' => '-I../../.. @GLIB_CFLAGS@', - 'VERSION_FROM' => '@srcdir@/TextUI.pm'); diff --git a/src/perl/ui/Makefile.PL.in b/src/perl/ui/Makefile.PL.in deleted file mode 100644 index 9507e74d..00000000 --- a/src/perl/ui/Makefile.PL.in +++ /dev/null @@ -1,8 +0,0 @@ -use ExtUtils::MakeMaker;our $AM_DEFAULT_VERBOSITY='@AM_DEFAULT_VERBOSITY@';require "@top_srcdir@/src/perl/Makefile_silent.pm"; - -WriteMakefile('NAME' => 'Irssi::UI', - 'LIBS' => '', - 'OBJECT' => '$(O_FILES)', - 'TYPEMAPS' => ['../common/typemap'], - 'INC' => '-I../../.. @GLIB_CFLAGS@', - 'VERSION_FROM' => '@srcdir@/UI.pm'); diff --git a/tests/Makefile.am b/tests/Makefile.am deleted file mode 100644 index 0799ee3f..00000000 --- a/tests/Makefile.am +++ /dev/null @@ -1,7 +0,0 @@ -if BUILD_TEXTUI -TEXTUI=fe-text -endif - -SUBDIRS = fe-common irc $(TEXTUI) - -EXTRA_DIST = meson.build diff --git a/tests/fe-common/Makefile.am b/tests/fe-common/Makefile.am deleted file mode 100644 index 74f13119..00000000 --- a/tests/fe-common/Makefile.am +++ /dev/null @@ -1,3 +0,0 @@ -SUBDIRS = core - -EXTRA_DIST = meson.build diff --git a/tests/fe-common/core/Makefile.am b/tests/fe-common/core/Makefile.am deleted file mode 100644 index 15287601..00000000 --- a/tests/fe-common/core/Makefile.am +++ /dev/null @@ -1,27 +0,0 @@ -include $(top_srcdir)/utils/glib-tap.mk - -PACKAGE_STRING=fe-common/core - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -test_programs = test-formats - -test_formats_CPPFLAGS = \ - $(AM_CPPFLAGS) - -test_formats_DEPENDENCIES = \ - ../../../src/core/libcore.a \ - ../../../src/lib-config/libirssi_config.a - -test_formats_LDADD = \ - ../../../src/fe-common/core/libfe_common_core.a \ - ../../../src/core/libcore.a \ - ../../../src/lib-config/libirssi_config.a \ - @PROG_LIBS@ - -test_formats_SOURCES = \ - test-formats.c - -EXTRA_DIST += meson.build diff --git a/tests/fe-text/Makefile.am b/tests/fe-text/Makefile.am deleted file mode 100644 index a0e1d0f5..00000000 --- a/tests/fe-text/Makefile.am +++ /dev/null @@ -1,38 +0,0 @@ -include $(top_srcdir)/utils/glib-tap.mk - -PACKAGE_STRING=fe-text - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - $(GLIB_CFLAGS) - -test_programs = test-paste-join-multiline - -test_paste_join_multiline_CPPFLAGS = \ - $(AM_CPPFLAGS) - -# test_paste_join_multiline_DEPENDENCIES = - -test_paste_join_multiline_LDADD = \ - ../../src/fe-common/core/libfe_common_core.a \ - ../../src/core/libcore.a \ - ../../src/lib-config/libirssi_config.a \ - @PROG_LIBS@ \ - @TEXTUI_LIBS@ - - -test_paste_join_multiline_SOURCES = \ - ../../src/fe-text/gui-entry.c \ - ../../src/fe-text/mainwindows.c \ - ../../src/fe-text/term-terminfo.c \ - ../../src/fe-text/terminfo-core.c \ - ../../src/fe-text/term.c \ - ../../src/fe-text/textbuffer-formats.c \ - ../../src/fe-text/textbuffer-view.c \ - ../../src/fe-text/textbuffer.c \ - ../../src/fe-text/gui-windows.c \ - ../../src/fe-text/gui-printtext.c \ - mock-irssi.c \ - test-paste-join-multiline.c - -EXTRA_DIST += meson.build diff --git a/tests/irc/Makefile.am b/tests/irc/Makefile.am deleted file mode 100644 index 88adb5b9..00000000 --- a/tests/irc/Makefile.am +++ /dev/null @@ -1,5 +0,0 @@ -SUBDIRS = \ - core \ - flood - -EXTRA_DIST = meson.build diff --git a/tests/irc/core/Makefile.am b/tests/irc/core/Makefile.am deleted file mode 100644 index 503989a9..00000000 --- a/tests/irc/core/Makefile.am +++ /dev/null @@ -1,31 +0,0 @@ -include $(top_srcdir)/utils/glib-tap.mk - -PACKAGE_STRING=irc/core - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -DSYSCONFDIR=\""$(sysconfdir)"\" \ - $(GLIB_CFLAGS) - -test_programs = test-channel-events test-irc - -CPPFLAGS = \ - $(AM_CPPFLAGS) - -DEPENDENCIES = \ - ../../../src/core/libcore.a \ - ../../../src/lib-config/libirssi_config.a - -LDADD = \ - ../../../src/irc/core/libirc_core.a \ - ../../../src/core/libcore.a \ - ../../../src/lib-config/libirssi_config.a \ - @PROG_LIBS@ - -test_channel_events_SOURCES = \ - test-channel-events.c - -test_irc_SOURCES = \ - test-irc.c - -EXTRA_DIST += meson.build diff --git a/tests/irc/flood/Makefile.am b/tests/irc/flood/Makefile.am deleted file mode 100644 index 6c4eec84..00000000 --- a/tests/irc/flood/Makefile.am +++ /dev/null @@ -1,37 +0,0 @@ -include $(top_srcdir)/utils/glib-tap.mk - -PACKAGE_STRING=irc/flood - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -DSYSCONFDIR=\""$(sysconfdir)"\" \ - $(GLIB_CFLAGS) - -test_programs = \ - test-796 - -test_796_CPPFLAGS = \ - $(AM_CPPFLAGS) - -test_796_DEPENDENCIES = \ - ../../../src/core/libcore.a \ - ../../../src/lib-config/libirssi_config.a - -test_796_LDADD = \ - ../../../src/irc/libirc.a \ - ../../../src/fe-common/irc/libfe_common_irc.a \ - ../../../src/fe-common/irc/dcc/libfe_irc_dcc.a \ - ../../../src/fe-common/irc/notifylist/libfe_irc_notifylist.a \ - ../../../src/irc/dcc/libirc_dcc.a \ - ../../../src/irc/notifylist/libirc_notifylist.a \ - ../../../src/irc/flood/libirc_flood.a \ - ../../../src/irc/core/libirc_core.a \ - ../../../src/fe-common/core/libfe_common_core.a \ - ../../../src/core/libcore.a \ - ../../../src/lib-config/libirssi_config.a \ - @PROG_LIBS@ - -test_796_SOURCES = \ - test-796.c - -EXTRA_DIST += meson.build diff --git a/themes/Makefile.am b/themes/Makefile.am deleted file mode 100644 index c8814532..00000000 --- a/themes/Makefile.am +++ /dev/null @@ -1,6 +0,0 @@ -themedir = $(datadir)/irssi/themes -theme_DATA = default.theme colorless.theme - -EXTRA_DIST = \ - $(theme_DATA) \ - meson.build diff --git a/utils/Makefile.am b/utils/Makefile.am deleted file mode 100644 index 8af5c8f7..00000000 --- a/utils/Makefile.am +++ /dev/null @@ -1,6 +0,0 @@ -EXTRA_DIST = \ - file2header.sh \ - irssi-version.sh \ - syntax.pl \ - tap-driver.sh \ - tap-test diff --git a/utils/check-perl-hash.sh b/utils/check-perl-hash.sh new file mode 100755 index 00000000..208257e9 --- /dev/null +++ b/utils/check-perl-hash.sh @@ -0,0 +1,3 @@ +#!/bin/sh +# make sure perl hashes have correct length +find src/perl \( -name '*.c' -o -name '*.xs' \) -exec grep -n hv_store {} + | perl -l -ne 'if (/"(\w+)",\s*(\d+)/ && $2 != length $1) { $X=1; print "Incorrect key length in $_" } END { exit $X }' diff --git a/utils/file2header.sh b/utils/file2header.sh index f25ae13b..174d3d13 100755 --- a/utils/file2header.sh +++ b/utils/file2header.sh @@ -1,5 +1,5 @@ #!/bin/sh echo "const char *$2 =" -cat $1|sed 's/\\/\\\\/g'|sed 's/"/\\"/g'|sed 's/^/\"/'|sed 's/$/\\n\"/' +sed 's/\\/\\\\/g;s/"/\\"/g;s/^/\"/;s/$/\\n\"/' "$1" echo ";" diff --git a/utils/glib-tap.mk b/utils/glib-tap.mk deleted file mode 100644 index 582f6d29..00000000 --- a/utils/glib-tap.mk +++ /dev/null @@ -1,134 +0,0 @@ -# GLIB - Library of useful C routines - -TESTS_ENVIRONMENT= \ - G_TEST_SRCDIR="$(abs_srcdir)" \ - G_TEST_BUILDDIR="$(abs_builddir)" \ - G_DEBUG=gc-friendly \ - MALLOC_CHECK_=2 \ - MALLOC_PERTURB_=$$(($${RANDOM:-256} % 256)) -LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) $(top_srcdir)/utils/tap-driver.sh -LOG_COMPILER = $(top_srcdir)/utils/tap-test - -NULL = - -# initialize variables for unconditional += appending -BUILT_SOURCES = -BUILT_EXTRA_DIST = -CLEANFILES = *.log *.trs -DISTCLEANFILES = -MAINTAINERCLEANFILES = -EXTRA_DIST = -TESTS = - -installed_test_LTLIBRARIES = -installed_test_PROGRAMS = -installed_test_SCRIPTS = -nobase_installed_test_DATA = - -noinst_LTLIBRARIES = -noinst_PROGRAMS = -noinst_SCRIPTS = -noinst_DATA = - -check_LTLIBRARIES = -check_PROGRAMS = -check_SCRIPTS = -check_DATA = - -# We support a fairly large range of possible variables. It is expected that all types of files in a test suite -# will belong in exactly one of the following variables. -# -# First, we support the usual automake suffixes, but in lowercase, with the customary meaning: -# -# test_programs, test_scripts, test_data, test_ltlibraries -# -# The above are used to list files that are involved in both uninstalled and installed testing. The -# test_programs and test_scripts are taken to be actual testcases and will be run as part of the test suite. -# Note that _data is always used with the nobase_ automake variable name to ensure that installed test data is -# installed in the same way as it appears in the package layout. -# -# In order to mark a particular file as being only for one type of testing, use 'installed' or 'uninstalled', -# like so: -# -# installed_test_programs, uninstalled_test_programs -# installed_test_scripts, uninstalled_test_scripts -# installed_test_data, uninstalled_test_data -# installed_test_ltlibraries, uninstalled_test_ltlibraries -# -# Additionally, we support 'extra' infixes for programs and scripts. This is used for support programs/scripts -# that should not themselves be run as testcases (but exist to be used from other testcases): -# -# test_extra_programs, installed_test_extra_programs, uninstalled_test_extra_programs -# test_extra_scripts, installed_test_extra_scripts, uninstalled_test_extra_scripts -# -# Additionally, for _scripts and _data, we support the customary dist_ prefix so that the named script or data -# file automatically end up in the tarball. -# -# dist_test_scripts, dist_test_data, dist_test_extra_scripts -# dist_installed_test_scripts, dist_installed_test_data, dist_installed_test_extra_scripts -# dist_uninstalled_test_scripts, dist_uninstalled_test_data, dist_uninstalled_test_extra_scripts -# -# Note that no file is automatically disted unless it appears in one of the dist_ variables. This follows the -# standard automake convention of not disting programs scripts or data by default. -# -# test_programs, test_scripts, uninstalled_test_programs and uninstalled_test_scripts (as well as their disted -# variants) will be run as part of the in-tree 'make check'. These are all assumed to be runnable under -# gtester. That's a bit strange for scripts, but it's possible. - -TESTS += $(test_programs) $(test_scripts) $(uninstalled_test_programs) $(uninstalled_test_scripts) \ - $(dist_test_scripts) $(dist_uninstalled_test_scripts) - -# Note: build even the installed-only targets during 'make check' to ensure that they still work. -# We need to do a bit of trickery here and manage disting via EXTRA_DIST instead of using dist_ prefixes to -# prevent automake from mistreating gmake functions like $(wildcard ...) and $(addprefix ...) as if they were -# filenames, including removing duplicate instances of the opening part before the space, eg. '$(addprefix'. -all_test_programs = $(test_programs) $(uninstalled_test_programs) $(installed_test_programs) \ - $(test_extra_programs) $(uninstalled_test_extra_programs) $(installed_test_extra_programs) -all_test_scripts = $(test_scripts) $(uninstalled_test_scripts) $(installed_test_scripts) \ - $(test_extra_scripts) $(uninstalled_test_extra_scripts) $(installed_test_extra_scripts) -all_dist_test_scripts = $(dist_test_scripts) $(dist_uninstalled_test_scripts) $(dist_installed_test_scripts) \ - $(dist_test_extra_scripts) $(dist_uninstalled_test_extra_scripts) $(dist_installed_test_extra_scripts) -all_test_scripts += $(all_dist_test_scripts) -EXTRA_DIST += $(all_dist_test_scripts) -all_test_data = $(test_data) $(uninstalled_test_data) $(installed_test_data) -all_dist_test_data = $(dist_test_data) $(dist_uninstalled_test_data) $(dist_installed_test_data) -all_test_data += $(all_dist_test_data) -EXTRA_DIST += $(all_dist_test_data) -all_test_ltlibs = $(test_ltlibraries) $(uninstalled_test_ltlibraries) $(installed_test_ltlibraries) - -if ENABLE_ALWAYS_BUILD_TESTS -noinst_LTLIBRARIES += $(all_test_ltlibs) -noinst_PROGRAMS += $(all_test_programs) -noinst_SCRIPTS += $(all_test_scripts) -noinst_DATA += $(all_test_data) -else -check_LTLIBRARIES += $(all_test_ltlibs) -check_PROGRAMS += $(all_test_programs) -check_SCRIPTS += $(all_test_scripts) -check_DATA += $(all_test_data) -endif - -if ENABLE_INSTALLED_TESTS -installed_test_PROGRAMS += $(test_programs) $(installed_test_programs) \ - $(test_extra_programs) $(installed_test_extra_programs) -installed_test_SCRIPTS += $(test_scripts) $(installed_test_scripts) \ - $(test_extra_scripts) $(test_installed_extra_scripts) -installed_test_SCRIPTS += $(dist_test_scripts) $(dist_test_extra_scripts) \ - $(dist_installed_test_scripts) $(dist_installed_test_extra_scripts) -nobase_installed_test_DATA += $(test_data) $(installed_test_data) -nobase_installed_test_DATA += $(dist_test_data) $(dist_installed_test_data) -installed_test_LTLIBRARIES += $(test_ltlibraries) $(installed_test_ltlibraries) -installed_testcases = $(test_programs) $(installed_test_programs) \ - $(test_scripts) $(installed_test_scripts) \ - $(dist_test_scripts) $(dist_installed_test_scripts) - -installed_test_meta_DATA = $(installed_testcases:=.test) - -%.test: %$(EXEEXT) Makefile - $(AM_V_GEN) (echo '[Test]' > $@.tmp; \ - echo 'Type=session' >> $@.tmp; \ - echo 'Exec=$(installed_testdir)/$<' >> $@.tmp; \ - mv $@.tmp $@) - -CLEANFILES += $(installed_test_meta_DATA) -endif diff --git a/utils/irssi-version.sh b/utils/irssi-version.sh index b096fd90..aa3b6442 100755 --- a/utils/irssi-version.sh +++ b/utils/irssi-version.sh @@ -1,20 +1,20 @@ #!/bin/sh -DATE=`GIT_DIR=$1/.git git log -1 --pretty=format:%ci HEAD 2>/dev/null` +DATE=$(GIT_DIR=$1/.git git log -1 --pretty=format:%ci HEAD 2>/dev/null) -VERSION_DATE=`echo $DATE | cut -f 1 -d ' ' | tr -d -` -VERSION_TIME=`echo $DATE | cut -f 2 -d ' ' | awk -F: '{printf "%d", $1$2}'` +VERSION_DATE=$(echo "$DATE" | cut -f 1 -d ' ' | tr -d -) +VERSION_TIME=$(echo "$DATE" | cut -f 2 -d ' ' | awk -F: '{printf "%d", $1$2}') if test -z "$VERSION_DATE"; then - DATE=`grep '^v' $1/NEWS | head -1` - VERSION_DATE=`echo "$DATE" | cut -f 2 -d ' ' | tr -d -` + DATE=$(grep '^v' "$1"/NEWS | head -1) + VERSION_DATE=$(echo "$DATE" | cut -f 2 -d ' ' | tr -d -) case $VERSION_DATE in *xx) - VERSION_DATE=`date +%Y%m%d` + VERSION_DATE=$(date +%Y%m%d) ;; esac - VERSION_TIME=`echo "$DATE" | cut -f 1 -d ' ' | tr -d v | tr .- ' '` - VERSION_TIME=`printf %d%d%02d $VERSION_TIME 2>/dev/null` + VERSION_TIME=$(echo "$DATE" | cut -f 1 -d ' ' | tr -d v | tr .- ' ') + VERSION_TIME=$(printf %d%d%02d $VERSION_TIME 2>/dev/null) fi echo "#define IRSSI_VERSION_DATE $VERSION_DATE" diff --git a/utils/make-dist.sh b/utils/make-dist.sh new file mode 100755 index 00000000..d156255a --- /dev/null +++ b/utils/make-dist.sh @@ -0,0 +1,61 @@ +#!/bin/sh +# Run this to create a distribution tarball from a git checkout + +set -e + +PKG_NAME="Irssi" + +repo_root="$(git rev-parse --show-toplevel)" +dist_tmp="$repo_root/${PKG_NAME}-Dist" + +if [ -z "$repo_root" ]; then + echo "**Error**: ${PKG_NAME} make-dist.sh must be run in a git clone, cannot proceed." + exit 1 +fi + +if [ ! -f "$repo_root"/irssi.conf ]; then + echo -n "**Error**: Directory \`$repo_root' does not look like the" + echo " top-level $PKG_NAME directory" + exit 1 +fi + +cd "$repo_root" +./utils/check-perl-hash.sh + +rm -fr "$dist_tmp" +git clone --no-local "$repo_root" "$dist_tmp" +cd "$dist_tmp" +if [ ! -f meson.build ]; then + echo "**Error**: ${PKG_NAME} make-dist.sh could not find meson.build, cannot proceed." + exit 1 +fi + +name=$(perl -0777 -n -e "m{project\\(\\s*'(.*?)'}s and print \$1 and exit" meson.build) +version=$(perl -0777 -n -e "m{project\\(.*?,\\s*version\\s*:\\s*'(.*?)'}s and print \$1 and exit" meson.build) +if [ -z "$name" ] || [ -z "$version" ]; then + echo "**Error**: ${PKG_NAME} make-dist.sh could not find either name or version, cannot proceed." + exit 1 +fi + +cat <setup.cfg +[metadata] +name = $name +version = $version +url = https://ailin-nemui.github.io/irssi/ +maintainer = Ailin Nemui +license = GNU General Public License v2 or later (GPLv2+) + +SETUP_CFG +python3 -c 'from setuptools import *;setup()' sdist --formats=tar + +tar --delete --file "dist/$name-$version.tar" \ + "$name-$version/setup.cfg" \ + "$name-$version/$name.egg-info" \ + "$name-$version/PKG-INFO" + +xz -k "dist/$name-$version.tar" +gzip -k "dist/$name-$version.tar" + +mv -v dist/*.tar.* "$repo_root" +cd "$repo_root" +# rm -fr "$dist_tmp" diff --git a/utils/syncdocs.sh b/utils/syncdocs.sh index fb88393b..77ac93bf 100755 --- a/utils/syncdocs.sh +++ b/utils/syncdocs.sh @@ -19,7 +19,7 @@ srcdir=`dirname "$0"` test -z "$srcdir" && srcdir=. srcdir="$srcdir"/.. -if test ! -f "$srcdir"/configure.ac; then +if test ! -f "$srcdir"/irssi.conf; then echo -n "**Error**: Directory \`$srcdir' does not look like the" echo " top-level $PKG_NAME directory" exit 1 diff --git a/utils/syncscripts.sh b/utils/syncscripts.sh index 533b77cc..5df1d036 100755 --- a/utils/syncscripts.sh +++ b/utils/syncscripts.sh @@ -9,7 +9,7 @@ srcdir=`dirname "$0"` test -z "$srcdir" && srcdir=. srcdir="$srcdir"/.. -if test ! -f "$srcdir"/configure.ac; then +if test ! -f "$srcdir"/irssi.conf; then echo -n "**Error**: Directory \`$srcdir' does not look like the" echo " top-level $PKG_NAME directory" exit 1 diff --git a/utils/tap-driver.sh b/utils/tap-driver.sh deleted file mode 100755 index 19aa531d..00000000 --- a/utils/tap-driver.sh +++ /dev/null @@ -1,652 +0,0 @@ -#! /bin/sh -# Copyright (C) 2011-2013 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -scriptversion=2011-12-27.17; # UTC - -# Make unconditional expansion of undefined variables an error. This -# helps a lot in preventing typo-related bugs. -set -u - -me=tap-driver.sh - -fatal () -{ - echo "$me: fatal: $*" >&2 - exit 1 -} - -usage_error () -{ - echo "$me: $*" >&2 - print_usage >&2 - exit 2 -} - -print_usage () -{ - cat < - # - trap : 1 3 2 13 15 - if test $merge -gt 0; then - exec 2>&1 - else - exec 2>&3 - fi - "$@" - echo $? - ) | LC_ALL=C ${AM_TAP_AWK-awk} \ - -v me="$me" \ - -v test_script_name="$test_name" \ - -v log_file="$log_file" \ - -v trs_file="$trs_file" \ - -v expect_failure="$expect_failure" \ - -v merge="$merge" \ - -v ignore_exit="$ignore_exit" \ - -v comments="$comments" \ - -v diag_string="$diag_string" \ -' -# FIXME: the usages of "cat >&3" below could be optimized when using -# FIXME: GNU awk, and/on on systems that supports /dev/fd/. - -# Implementation note: in what follows, `result_obj` will be an -# associative array that (partly) simulates a TAP result object -# from the `TAP::Parser` perl module. - -## ----------- ## -## FUNCTIONS ## -## ----------- ## - -function fatal(msg) -{ - print me ": " msg | "cat >&2" - exit 1 -} - -function abort(where) -{ - fatal("internal error " where) -} - -# Convert a boolean to a "yes"/"no" string. -function yn(bool) -{ - return bool ? "yes" : "no"; -} - -function add_test_result(result) -{ - if (!test_results_index) - test_results_index = 0 - test_results_list[test_results_index] = result - test_results_index += 1 - test_results_seen[result] = 1; -} - -# Whether the test script should be re-run by "make recheck". -function must_recheck() -{ - for (k in test_results_seen) - if (k != "XFAIL" && k != "PASS" && k != "SKIP") - return 1 - return 0 -} - -# Whether the content of the log file associated to this test should -# be copied into the "global" test-suite.log. -function copy_in_global_log() -{ - for (k in test_results_seen) - if (k != "PASS") - return 1 - return 0 -} - -# FIXME: this can certainly be improved ... -function get_global_test_result() -{ - if ("ERROR" in test_results_seen) - return "ERROR" - if ("FAIL" in test_results_seen || "XPASS" in test_results_seen) - return "FAIL" - all_skipped = 1 - for (k in test_results_seen) - if (k != "SKIP") - all_skipped = 0 - if (all_skipped) - return "SKIP" - return "PASS"; -} - -function stringify_result_obj(result_obj) -{ - if (result_obj["is_unplanned"] || result_obj["number"] != testno) - return "ERROR" - - if (plan_seen == LATE_PLAN) - return "ERROR" - - if (result_obj["directive"] == "TODO") - return result_obj["is_ok"] ? "XPASS" : "XFAIL" - - if (result_obj["directive"] == "SKIP") - return result_obj["is_ok"] ? "SKIP" : COOKED_FAIL; - - if (length(result_obj["directive"])) - abort("in function stringify_result_obj()") - - return result_obj["is_ok"] ? COOKED_PASS : COOKED_FAIL -} - -function decorate_result(result) -{ - color_name = color_for_result[result] - if (color_name) - return color_map[color_name] "" result "" color_map["std"] - # If we are not using colorized output, or if we do not know how - # to colorize the given result, we should return it unchanged. - return result -} - -function report(result, details) -{ - if (result ~ /^(X?(PASS|FAIL)|SKIP|ERROR)/) - { - msg = ": " test_script_name - add_test_result(result) - } - else if (result == "#") - { - msg = " " test_script_name ":" - } - else - { - abort("in function report()") - } - if (length(details)) - msg = msg " " details - # Output on console might be colorized. - print decorate_result(result) msg - # Log the result in the log file too, to help debugging (this is - # especially true when said result is a TAP error or "Bail out!"). - print result msg | "cat >&3"; -} - -function testsuite_error(error_message) -{ - report("ERROR", "- " error_message) -} - -function handle_tap_result() -{ - details = result_obj["number"]; - if (length(result_obj["description"])) - details = details " " result_obj["description"] - - if (plan_seen == LATE_PLAN) - { - details = details " # AFTER LATE PLAN"; - } - else if (result_obj["is_unplanned"]) - { - details = details " # UNPLANNED"; - } - else if (result_obj["number"] != testno) - { - details = sprintf("%s # OUT-OF-ORDER (expecting %d)", - details, testno); - } - else if (result_obj["directive"]) - { - details = details " # " result_obj["directive"]; - if (length(result_obj["explanation"])) - details = details " " result_obj["explanation"] - } - - report(stringify_result_obj(result_obj), details) -} - -# `skip_reason` should be empty whenever planned > 0. -function handle_tap_plan(planned, skip_reason) -{ - planned += 0 # Avoid getting confused if, say, `planned` is "00" - if (length(skip_reason) && planned > 0) - abort("in function handle_tap_plan()") - if (plan_seen) - { - # Error, only one plan per stream is acceptable. - testsuite_error("multiple test plans") - return; - } - planned_tests = planned - # The TAP plan can come before or after *all* the TAP results; we speak - # respectively of an "early" or a "late" plan. If we see the plan line - # after at least one TAP result has been seen, assume we have a late - # plan; in this case, any further test result seen after the plan will - # be flagged as an error. - plan_seen = (testno >= 1 ? LATE_PLAN : EARLY_PLAN) - # If testno > 0, we have an error ("too many tests run") that will be - # automatically dealt with later, so do not worry about it here. If - # $plan_seen is true, we have an error due to a repeated plan, and that - # has already been dealt with above. Otherwise, we have a valid "plan - # with SKIP" specification, and should report it as a particular kind - # of SKIP result. - if (planned == 0 && testno == 0) - { - if (length(skip_reason)) - skip_reason = "- " skip_reason; - report("SKIP", skip_reason); - } -} - -function extract_tap_comment(line) -{ - if (index(line, diag_string) == 1) - { - # Strip leading `diag_string` from `line`. - line = substr(line, length(diag_string) + 1) - # And strip any leading and trailing whitespace left. - sub("^[ \t]*", "", line) - sub("[ \t]*$", "", line) - # Return what is left (if any). - return line; - } - return ""; -} - -# When this function is called, we know that line is a TAP result line, -# so that it matches the (perl) RE "^(not )?ok\b". -function setup_result_obj(line) -{ - # Get the result, and remove it from the line. - result_obj["is_ok"] = (substr(line, 1, 2) == "ok" ? 1 : 0) - sub("^(not )?ok[ \t]*", "", line) - - # If the result has an explicit number, get it and strip it; otherwise, - # automatically assing the next progresive number to it. - if (line ~ /^[0-9]+$/ || line ~ /^[0-9]+[^a-zA-Z0-9_]/) - { - match(line, "^[0-9]+") - # The final `+ 0` is to normalize numbers with leading zeros. - result_obj["number"] = substr(line, 1, RLENGTH) + 0 - line = substr(line, RLENGTH + 1) - } - else - { - result_obj["number"] = testno - } - - if (plan_seen == LATE_PLAN) - # No further test results are acceptable after a "late" TAP plan - # has been seen. - result_obj["is_unplanned"] = 1 - else if (plan_seen && testno > planned_tests) - result_obj["is_unplanned"] = 1 - else - result_obj["is_unplanned"] = 0 - - # Strip trailing and leading whitespace. - sub("^[ \t]*", "", line) - sub("[ \t]*$", "", line) - - # This will have to be corrected if we have a "TODO"/"SKIP" directive. - result_obj["description"] = line - result_obj["directive"] = "" - result_obj["explanation"] = "" - - if (index(line, "#") == 0) - return # No possible directive, nothing more to do. - - # Directives are case-insensitive. - rx = "[ \t]*#[ \t]*([tT][oO][dD][oO]|[sS][kK][iI][pP])[ \t]*" - - # See whether we have the directive, and if yes, where. - pos = match(line, rx "$") - if (!pos) - pos = match(line, rx "[^a-zA-Z0-9_]") - - # If there was no TAP directive, we have nothing more to do. - if (!pos) - return - - # Let`s now see if the TAP directive has been escaped. For example: - # escaped: ok \# SKIP - # not escaped: ok \\# SKIP - # escaped: ok \\\\\# SKIP - # not escaped: ok \ # SKIP - if (substr(line, pos, 1) == "#") - { - bslash_count = 0 - for (i = pos; i > 1 && substr(line, i - 1, 1) == "\\"; i--) - bslash_count += 1 - if (bslash_count % 2) - return # Directive was escaped. - } - - # Strip the directive and its explanation (if any) from the test - # description. - result_obj["description"] = substr(line, 1, pos - 1) - # Now remove the test description from the line, that has been dealt - # with already. - line = substr(line, pos) - # Strip the directive, and save its value (normalized to upper case). - sub("^[ \t]*#[ \t]*", "", line) - result_obj["directive"] = toupper(substr(line, 1, 4)) - line = substr(line, 5) - # Now get the explanation for the directive (if any), with leading - # and trailing whitespace removed. - sub("^[ \t]*", "", line) - sub("[ \t]*$", "", line) - result_obj["explanation"] = line -} - -function get_test_exit_message(status) -{ - if (status == 0) - return "" - if (status !~ /^[1-9][0-9]*$/) - abort("getting exit status") - if (status < 127) - exit_details = "" - else if (status == 127) - exit_details = " (command not found?)" - else if (status >= 128 && status <= 255) - exit_details = sprintf(" (terminated by signal %d?)", status - 128) - else if (status > 256 && status <= 384) - # We used to report an "abnormal termination" here, but some Korn - # shells, when a child process die due to signal number n, can leave - # in $? an exit status of 256+n instead of the more standard 128+n. - # Apparently, both behaviours are allowed by POSIX (2008), so be - # prepared to handle them both. See also Austing Group report ID - # 0000051 - exit_details = sprintf(" (terminated by signal %d?)", status - 256) - else - # Never seen in practice. - exit_details = " (abnormal termination)" - return sprintf("exited with status %d%s", status, exit_details) -} - -function write_test_results() -{ - print ":global-test-result: " get_global_test_result() > trs_file - print ":recheck: " yn(must_recheck()) > trs_file - print ":copy-in-global-log: " yn(copy_in_global_log()) > trs_file - for (i = 0; i < test_results_index; i += 1) - print ":test-result: " test_results_list[i] > trs_file - close(trs_file); -} - -BEGIN { - -## ------- ## -## SETUP ## -## ------- ## - -'"$init_colors"' - -# Properly initialized once the TAP plan is seen. -planned_tests = 0 - -COOKED_PASS = expect_failure ? "XPASS": "PASS"; -COOKED_FAIL = expect_failure ? "XFAIL": "FAIL"; - -# Enumeration-like constants to remember which kind of plan (if any) -# has been seen. It is important that NO_PLAN evaluates "false" as -# a boolean. -NO_PLAN = 0 -EARLY_PLAN = 1 -LATE_PLAN = 2 - -testno = 0 # Number of test results seen so far. -bailed_out = 0 # Whether a "Bail out!" directive has been seen. - -# Whether the TAP plan has been seen or not, and if yes, which kind -# it is ("early" is seen before any test result, "late" otherwise). -plan_seen = NO_PLAN - -## --------- ## -## PARSING ## -## --------- ## - -is_first_read = 1 - -while (1) - { - # Involutions required so that we are able to read the exit status - # from the last input line. - st = getline - if (st < 0) # I/O error. - fatal("I/O error while reading from input stream") - else if (st == 0) # End-of-input - { - if (is_first_read) - abort("in input loop: only one input line") - break - } - if (is_first_read) - { - is_first_read = 0 - nextline = $0 - continue - } - else - { - curline = nextline - nextline = $0 - $0 = curline - } - # Copy any input line verbatim into the log file. - print | "cat >&3" - # Parsing of TAP input should stop after a "Bail out!" directive. - if (bailed_out) - continue - - # TAP test result. - if ($0 ~ /^(not )?ok$/ || $0 ~ /^(not )?ok[^a-zA-Z0-9_]/) - { - testno += 1 - setup_result_obj($0) - handle_tap_result() - } - # TAP plan (normal or "SKIP" without explanation). - else if ($0 ~ /^1\.\.[0-9]+[ \t]*$/) - { - # The next two lines will put the number of planned tests in $0. - sub("^1\\.\\.", "") - sub("[^0-9]*$", "") - handle_tap_plan($0, "") - continue - } - # TAP "SKIP" plan, with an explanation. - else if ($0 ~ /^1\.\.0+[ \t]*#/) - { - # The next lines will put the skip explanation in $0, stripping - # any leading and trailing whitespace. This is a little more - # tricky in truth, since we want to also strip a potential leading - # "SKIP" string from the message. - sub("^[^#]*#[ \t]*(SKIP[: \t][ \t]*)?", "") - sub("[ \t]*$", ""); - handle_tap_plan(0, $0) - } - # "Bail out!" magic. - # Older versions of prove and TAP::Harness (e.g., 3.17) did not - # recognize a "Bail out!" directive when preceded by leading - # whitespace, but more modern versions (e.g., 3.23) do. So we - # emulate the latter, "more modern" behaviour. - else if ($0 ~ /^[ \t]*Bail out!/) - { - bailed_out = 1 - # Get the bailout message (if any), with leading and trailing - # whitespace stripped. The message remains stored in `$0`. - sub("^[ \t]*Bail out![ \t]*", ""); - sub("[ \t]*$", ""); - # Format the error message for the - bailout_message = "Bail out!" - if (length($0)) - bailout_message = bailout_message " " $0 - testsuite_error(bailout_message) - } - # Maybe we have too look for dianogtic comments too. - else if (comments != 0) - { - comment = extract_tap_comment($0); - if (length(comment)) - report("#", comment); - } - } - -## -------- ## -## FINISH ## -## -------- ## - -# A "Bail out!" directive should cause us to ignore any following TAP -# error, as well as a non-zero exit status from the TAP producer. -if (!bailed_out) - { - if (!plan_seen) - { - testsuite_error("missing test plan") - } - else if (planned_tests != testno) - { - bad_amount = testno > planned_tests ? "many" : "few" - testsuite_error(sprintf("too %s tests run (expected %d, got %d)", - bad_amount, planned_tests, testno)) - } - if (!ignore_exit) - { - # Fetch exit status from the last line. - exit_message = get_test_exit_message(nextline) - if (exit_message) - testsuite_error(exit_message) - } - } - -write_test_results() - -exit 0 - -} # End of "BEGIN" block. -' - -# TODO: document that we consume the file descriptor 3 :-( -} 3>"$log_file" - -test $? -eq 0 || fatal "I/O or internal error" - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff --git a/utils/tap-test b/utils/tap-test deleted file mode 100755 index b3ef8b04..00000000 --- a/utils/tap-test +++ /dev/null @@ -1,23 +0,0 @@ -#! /bin/sh - -# run a GTest in tap mode. The test binary is passed as $1 - -t="$1"; shift -if ${PKG_CONFIG:-pkg-config} --atleast-version 2.40 glib-2.0; then -exec "$t" -k --tap "$@" -else # GTest does not support tap yet - (((("$t" "$@"; echo $? >&3) | ${AM_TAP_AWK:-awk} ' -{ - if (/: /) { - i++ - ok = /: OK/ - sub(/:/, " #") - print (ok ? "ok " : "not ok ") i " " $0 - } else { - print "# " $0 - } -} END { - print 1 ".." i -} -' >&4) 3>&1) | (read xs; exit $xs)) 4>&1 -fi