1 | dnl Copyright © 2007 Pippijn van Steenhoven / The Ermyth Team |
1 | dnl Copyright © 2007 Pippijn van Steenhoven / The Ermyth Team |
2 | dnl Copyright © 2005 Atheme Development Group |
2 | dnl Copyright © 2005 Atheme Development Group |
3 | dnl Rights to this code are documented in doc/LICENSE. |
3 | dnl Rights to this code are documented in doc/pod/license.pod. |
4 | dnl |
4 | dnl |
5 | dnl $Id: configure.ac,v 1.1 2007/07/19 08:24:47 pippijn Exp $ |
5 | dnl $Id: configure.ac,v 1.4 2007/07/21 15:01:26 pippijn Exp $ |
6 | |
6 | |
7 | dnl Process this file with autoconf to produce a configure script. |
7 | dnl Process this file with autoconf to produce a configure script. |
8 | |
8 | |
9 | AC_PREREQ(2.59) |
9 | AC_PREREQ(2.59) |
10 | AC_INIT([ermyth], [2.3], [ermyth@one09.net]) |
10 | AC_INIT([ermyth], [2.3], [ermyth@one09.net]) |
11 | AC_CONFIG_HEADER(include/sysconf.h) |
11 | AC_CONFIG_HEADER(include/sysconf.h) |
12 | AC_CONFIG_AUX_DIR(autoconf) |
12 | AC_CONFIG_AUX_DIR(autoconf) |
13 | |
13 | |
14 | AC_COPYRIGHT([$Id: configure.ac,v 1.1 2007/07/19 08:24:47 pippijn Exp $]) |
14 | AC_COPYRIGHT([$Id: configure.ac,v 1.4 2007/07/21 15:01:26 pippijn Exp $]) |
15 | |
15 | |
16 | AC_PREFIX_DEFAULT(~/PACKAGE) |
16 | AC_PREFIX_DEFAULT(~/PACKAGE) |
17 | |
17 | |
18 | dnl Automake compatibility. |
18 | dnl Automake compatibility. |
19 | AC_SUBST([PACKAGE], [AC_PACKAGE_TARNAME]) |
19 | AC_SUBST([PACKAGE], [AC_PACKAGE_TARNAME]) |
… | |
… | |
107 | |
107 | |
108 | dnl |
108 | dnl |
109 | dnl Checks for header files. |
109 | dnl Checks for header files. |
110 | dnl |
110 | dnl |
111 | |
111 | |
112 | AC_CHECK_HEADERS(getopt.h link.h valgrind/memcheck.h) |
112 | dnl AC_CHECK_HEADERS(getopt.h link.h valgrind/memcheck.h) |
113 | AC_CHECK_HEADER(tr1/unordered_map, [], [AC_MSG_ERROR([Your compiler must support the Library Technical Report 1 extensions.])]) |
113 | dnl AC_CHECK_HEADER(tr1/unordered_map, [], [AC_MSG_ERROR([Your compiler must support the Library Technical Report 1 extensions.])]) |
114 | |
114 | |
115 | AC_DEFINE(_REENTRANT, [1], [Define this]) |
115 | AC_DEFINE(_REENTRANT, [1], [Define this]) |
116 | |
116 | |
117 | #-------------------------------------------------- |
117 | #-------------------------------------------------- |
118 | # AC_ARG_WITH(boost, |
118 | # AC_ARG_WITH(boost, |
… | |
… | |
568 | echo |
568 | echo |
569 | echo "Compiler warnings" |
569 | echo "Compiler warnings" |
570 | echo |
570 | echo |
571 | |
571 | |
572 | dnl See what warnings we can get away with |
572 | dnl See what warnings we can get away with |
573 | ATHEME_C_GCC_TRY_FLAGS([-Wall], atheme_cv_c_gcc_w_all) |
573 | ERMYTH_C_GCC_TRY_FLAGS([-Wall], ermyth_cv_c_gcc_w_all) |
574 | ATHEME_C_GCC_TRY_FLAGS([-Wpointer-arith], atheme_cv_c_gcc_w_pointer_arith) |
574 | ERMYTH_C_GCC_TRY_FLAGS([-Wpointer-arith], ermyth_cv_c_gcc_w_pointer_arith) |
575 | ATHEME_C_GCC_TRY_FLAGS([-Wimplicit -Wnested-externs], atheme_cv_c_gcc_w_implicit) |
575 | ERMYTH_C_GCC_TRY_FLAGS([-Wimplicit -Wnested-externs], ermyth_cv_c_gcc_w_implicit) |
576 | ATHEME_C_GCC_TRY_FLAGS([-Wcast-align], atheme_cv_c_gcc_w_cast_align) |
576 | ERMYTH_C_GCC_TRY_FLAGS([-Wcast-align], ermyth_cv_c_gcc_w_cast_align) |
577 | ATHEME_C_GCC_TRY_FLAGS([-Wcast-qual], atheme_cv_c_gcc_w_cast_qual) |
577 | ERMYTH_C_GCC_TRY_FLAGS([-Wcast-qual], ermyth_cv_c_gcc_w_cast_qual) |
578 | ATHEME_C_GCC_TRY_FLAGS([-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations], atheme_cv_c_gcc_prototypes) |
578 | ERMYTH_C_GCC_TRY_FLAGS([-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations], ermyth_cv_c_gcc_prototypes) |
579 | ATHEME_C_GCC_TRY_FLAGS([-Wparenthesis], atheme_cv_c_gcc_parenthesis) |
579 | ERMYTH_C_GCC_TRY_FLAGS([-Wparenthesis], ermyth_cv_c_gcc_parenthesis) |
580 | ATHEME_C_GCC_TRY_FLAGS([-Wextra], atheme_cv_c_gcc_w_extra) |
580 | ERMYTH_C_GCC_TRY_FLAGS([-Wextra], ermyth_cv_c_gcc_w_extra) |
581 | ATHEME_C_GCC_TRY_FLAGS([-W -Wno-unused-parameter], atheme_cv_c_gcc_w) |
581 | ERMYTH_C_GCC_TRY_FLAGS([-W -Wno-unused-parameter], ermyth_cv_c_gcc_w) |
582 | ATHEME_C_GCC_TRY_FLAGS([-Wshadow], atheme_cv_c_gcc_w_shadow) |
582 | ERMYTH_C_GCC_TRY_FLAGS([-Wshadow], ermyth_cv_c_gcc_w_shadow) |
583 | ATHEME_C_GCC_TRY_FLAGS([-Wmissing-noreturn], atheme_cv_c_gcc_w_missing_noreturn) |
583 | ERMYTH_C_GCC_TRY_FLAGS([-Wmissing-noreturn], ermyth_cv_c_gcc_w_missing_noreturn) |
584 | ATHEME_C_GCC_TRY_FLAGS([-Wundef], atheme_cv_c_gcc_w_undef) |
584 | ERMYTH_C_GCC_TRY_FLAGS([-Wundef], ermyth_cv_c_gcc_w_undef) |
585 | ATHEME_C_GCC_TRY_FLAGS([-Wpacked], atheme_cv_c_gcc_w_packed) |
585 | ERMYTH_C_GCC_TRY_FLAGS([-Wpacked], ermyth_cv_c_gcc_w_packed) |
586 | ATHEME_C_GCC_TRY_FLAGS([-Wnested-externs], atheme_cv_c_gcc_w_nested_externs) |
586 | ERMYTH_C_GCC_TRY_FLAGS([-Wnested-externs], ermyth_cv_c_gcc_w_nested_externs) |
587 | ATHEME_C_GCC_TRY_FLAGS([-Wbad-function-cast], atheme_cv_c_gcc_w_bad_function_cast) |
587 | ERMYTH_C_GCC_TRY_FLAGS([-Wbad-function-cast], ermyth_cv_c_gcc_w_bad_function_cast) |
588 | ATHEME_C_GCC_TRY_FLAGS([-Wunused-function -Wunused-label -Wunused-value -Wunused-variable], atheme_cv_c_gcc_w_unused) |
588 | ERMYTH_C_GCC_TRY_FLAGS([-Wunused-function -Wunused-label -Wunused-value -Wunused-variable], ermyth_cv_c_gcc_w_unused) |
589 | ATHEME_C_GCC_TRY_FLAGS([-Wredundant-decls], atheme_cv_c_gcc_w_redundant_decls) |
589 | ERMYTH_C_GCC_TRY_FLAGS([-Wredundant-decls], ermyth_cv_c_gcc_w_redundant_decls) |
590 | ATHEME_C_GCC_TRY_FLAGS([-Wfloat-equal], atheme_cv_c_gcc_w_float_equal) |
590 | ERMYTH_C_GCC_TRY_FLAGS([-Wfloat-equal], ermyth_cv_c_gcc_w_float_equal) |
591 | ATHEME_C_GCC_TRY_FLAGS([-Wformat=2], atheme_cv_c_gcc_w_format) |
591 | ERMYTH_C_GCC_TRY_FLAGS([-Wformat=2], ermyth_cv_c_gcc_w_format) |
592 | ATHEME_C_GCC_TRY_FLAGS([-Wdisabled-optimization], atheme_cv_c_gcc_w_format) |
592 | ERMYTH_C_GCC_TRY_FLAGS([-Wdisabled-optimization], ermyth_cv_c_gcc_w_format) |
593 | ATHEME_C_GCC_TRY_FLAGS([-pedantic], atheme_cv_c_gcc_pedantic) |
593 | ERMYTH_C_GCC_TRY_FLAGS([-pedantic], ermyth_cv_c_gcc_pedantic) |
594 | ATHEME_C_GCC_TRY_FLAGS([-std=c89], atheme_cv_c_gcc_c89) |
594 | ERMYTH_C_GCC_TRY_FLAGS([-std=c89], ermyth_cv_c_gcc_c89) |
595 | |
595 | |
596 | dnl Too unreliable to be useful at this time. |
596 | dnl Too unreliable to be useful at this time. |
597 | dnl ATHEME_C_GCC_TRY_FLAGS([-Wunreachable-code], atheme_cv_c_gcc_w_unreachable_code) |
597 | dnl ERMYTH_C_GCC_TRY_FLAGS([-Wunreachable-code], ermyth_cv_c_gcc_w_unreachable_code) |
598 | |
598 | |
599 | dnl Maintainer flags. |
599 | dnl Maintainer flags. |
600 | dnl ATHEME_C_GCC_TRY_FLAGS([-Wconversion], atheme_cv_c_gcc_w_conversion) |
600 | dnl ERMYTH_C_GCC_TRY_FLAGS([-Wconversion], ermyth_cv_c_gcc_w_conversion) |
601 | ATHEME_C_GCC_TRY_FLAGS([-Wwrite-strings], atheme_cv_c_gcc_w_strings) |
601 | ERMYTH_C_GCC_TRY_FLAGS([-Wwrite-strings], ermyth_cv_c_gcc_w_strings) |
602 | dnl ATHEME_C_GCC_TRY_FLAGS([-Werror], atheme_cv_c_gcc_w_error) |
602 | dnl ERMYTH_C_GCC_TRY_FLAGS([-Werror], ermyth_cv_c_gcc_w_error) |
603 | ]) |
603 | ]) |
604 | |
604 | |
605 | AC_ARG_ENABLE(propolice, |
605 | AC_ARG_ENABLE(propolice, |
606 | AC_HELP_STRING([--disable-propolice],[ Disable propolice protections |
606 | AC_HELP_STRING([--disable-propolice],[ Disable propolice protections |
607 | (for debugging.)]), |
607 | (for debugging.)]), |
… | |
… | |
609 | |
609 | |
610 | echo |
610 | echo |
611 | echo "Disabling propolice." |
611 | echo "Disabling propolice." |
612 | echo |
612 | echo |
613 | |
613 | |
614 | ATHEME_C_GCC_TRY_FLAGS([-fno-stack-protector-all], atheme_nspa) |
614 | ERMYTH_C_GCC_TRY_FLAGS([-fno-stack-protector-all], ermyth_nspa) |
615 | ATHEME_C_GCC_TRY_FLAGS([-fno-pie], atheme_npie) |
615 | ERMYTH_C_GCC_TRY_FLAGS([-fno-pie], ermyth_npie) |
616 | ATHEME_C_GCC_TRY_FLAGS([-nonow], atheme_nonow) |
616 | ERMYTH_C_GCC_TRY_FLAGS([-nonow], ermyth_nonow) |
617 | ATHEME_C_GCC_TRY_FLAGS([-norelro], atheme_no_relro) |
617 | ERMYTH_C_GCC_TRY_FLAGS([-norelro], ermyth_no_relro) |
618 | ]) |
618 | ]) |
619 | |
619 | |
620 | AC_ARG_ENABLE(profile, |
620 | AC_ARG_ENABLE(profile, |
621 | AC_HELP_STRING([--enable-profile],[ Enable profiling extensions]), |
621 | AC_HELP_STRING([--enable-profile],[ Enable profiling extensions]), |
622 | [ |
622 | [ |
623 | |
623 | |
624 | echo |
624 | echo |
625 | echo "Enabling profiling." |
625 | echo "Enabling profiling." |
626 | echo |
626 | echo |
627 | |
627 | |
628 | ATHEME_C_GCC_TRY_FLAGS([-pg], atheme_pg) |
628 | ERMYTH_C_GCC_TRY_FLAGS([-pg], ermyth_pg) |
629 | ac_save_LDFLAGS="${LDFLAGS} -pg" |
629 | ac_save_LDFLAGS="${LDFLAGS} -pg" |
630 | LDFLAGS=${ac_save_LDFLAGS} |
630 | LDFLAGS=${ac_save_LDFLAGS} |
631 | ]) |
631 | ]) |
632 | |
632 | |
633 | ac_save_CXXFLAGS="${CXXFLAGS} ${orig_CXXFLAGS} ${CWARNS} -DPREFIX=\\\"\${prefix}\\\" -DLOCALEDIR=\\\"\${LOCALEDIR}\\\" -DMODDIR=\\\"\${MODDIR}\\\" -DSHAREDIR=\\\"${SHAREDIR}\\\" -DSYSCONFDIR=\\\"${sysconfdir}\\\" -DLOGDIR=\\\"${LOGDIR}\\\" -DRUNDIR=\\\"${RUNDIR}\\\" -DDATADIR=\\\"${DATADIR}\\\"" |
633 | ac_save_CXXFLAGS="${CXXFLAGS} ${orig_CXXFLAGS} ${CWARNS} -DPREFIX=\\\"\${prefix}\\\" -DLOCALEDIR=\\\"\${LOCALEDIR}\\\" -DMODDIR=\\\"\${MODDIR}\\\" -DSHAREDIR=\\\"${SHAREDIR}\\\" -DSYSCONFDIR=\\\"${sysconfdir}\\\" -DLOGDIR=\\\"${LOGDIR}\\\" -DRUNDIR=\\\"${RUNDIR}\\\" -DDATADIR=\\\"${DATADIR}\\\"" |
… | |
… | |
640 | |
640 | |
641 | echo |
641 | echo |
642 | echo "Enabling coverage analysis." |
642 | echo "Enabling coverage analysis." |
643 | echo |
643 | echo |
644 | |
644 | |
645 | ATHEME_C_GCC_TRY_FLAGS([-fprofile-arcs], atheme_profile_arcs) |
645 | ERMYTH_C_GCC_TRY_FLAGS([-fprofile-arcs], ermyth_profile_arcs) |
646 | ac_save_CXXFLAGS="${CXXFLAGS} -fprofile-arcs" |
646 | ac_save_CXXFLAGS="${CXXFLAGS} -fprofile-arcs" |
647 | CXXFLAGS=${ac_save_CXXFLAGS} |
647 | CXXFLAGS=${ac_save_CXXFLAGS} |
648 | |
648 | |
649 | dnl ATHEME_C_GCC_TRY_FLAGS([-fbranch-probabilities], atheme_branch_probabilities) |
649 | dnl ERMYTH_C_GCC_TRY_FLAGS([-fbranch-probabilities], ermyth_branch_probabilities) |
650 | dnl ac_save_CXXFLAGS="${CXXFLAGS} -fbranch-probabilities" |
650 | dnl ac_save_CXXFLAGS="${CXXFLAGS} -fbranch-probabilities" |
651 | dnl CXXFLAGS=${ac_save_CXXFLAGS} |
651 | dnl CXXFLAGS=${ac_save_CXXFLAGS} |
652 | |
652 | |
653 | ATHEME_C_GCC_TRY_FLAGS([-ftest-coverage], atheme_test_coverage) |
653 | ERMYTH_C_GCC_TRY_FLAGS([-ftest-coverage], ermyth_test_coverage) |
654 | ac_save_CXXFLAGS="${CXXFLAGS} -ftest-coverage" |
654 | ac_save_CXXFLAGS="${CXXFLAGS} -ftest-coverage" |
655 | CXXFLAGS=${ac_save_CXXFLAGS} |
655 | CXXFLAGS=${ac_save_CXXFLAGS} |
656 | |
656 | |
657 | ac_save_LDFLAGS="${LDFLAGS} -lgcov" |
657 | ac_save_LDFLAGS="${LDFLAGS} -lgcov" |
658 | LDFLAGS=${ac_save_LDFLAGS} |
658 | LDFLAGS=${ac_save_LDFLAGS} |
… | |
… | |
675 | |
675 | |
676 | echo |
676 | echo |
677 | echo "Makefile generation" |
677 | echo "Makefile generation" |
678 | echo |
678 | echo |
679 | |
679 | |
680 | AC_OUTPUT([ po/Makefile.in |
680 | AC_OUTPUT([ |
681 | Makefile |
681 | Makefile |
|
|
682 | doc/Makefile |
682 | include/callback.h |
683 | include/common/callback.h |
683 | modules/Makefile |
684 | modules/Makefile |
684 | modules/Makefile.common |
685 | modules/Makefile.common |
685 | modules/Makefile.defs |
686 | modules/Makefile.defs |
686 | modules/backend/Makefile |
687 | modules/backend/Makefile |
687 | modules/chanserv/Makefile |
688 | modules/chanserv/Makefile |
… | |
… | |
694 | modules/nickserv/Makefile |
695 | modules/nickserv/Makefile |
695 | modules/operserv/Makefile |
696 | modules/operserv/Makefile |
696 | modules/protocol/Makefile |
697 | modules/protocol/Makefile |
697 | modules/rpc/Makefile |
698 | modules/rpc/Makefile |
698 | modules/saslserv/Makefile |
699 | modules/saslserv/Makefile |
|
|
700 | po/Makefile.in |
699 | src/Makefile |
701 | src/Makefile |
700 | test/Makefile |
702 | test/Makefile |
701 | ]) |
703 | ]) |
702 | |
704 | |
703 | d=`eval echo ${MODDIR}` |
705 | d=`eval echo ${MODDIR}` |