From: Maxim Mamontov Date: Sat, 20 Jun 2015 09:32:23 +0000 (+0300) Subject: Merge branch 'stg-2.409' into stg-2.409-radius X-Git-Url: https://git.stg.codes/stg.git/commitdiff_plain/70f8adff2c970496bdc45717cad49ddec0405ae7?hp=a8690e044055da20e4cf7d7d7e51d182b5e09154 Merge branch 'stg-2.409' into stg-2.409-radius --- diff --git a/projects/libs/build b/projects/libs/build index 1d40d725..bc615505 100755 --- a/projects/libs/build +++ b/projects/libs/build @@ -1,10 +1,5 @@ #!/bin/sh -# $Revision: 1.57 $ -# $Author: faust $ -# $Date: 2010/05/09 12:39:01 $ -###################################################### - # Installation path prefix #PREFIX="" @@ -100,6 +95,7 @@ if [ "$OS" = "linux" ] then DEFS="$DEFS -DLINUX" else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -111,6 +107,7 @@ else if [ "$OS" == "darwin" ] then DEFS="$DEFS -DDARWIN" + LIBICONV="" fi fi fi @@ -172,7 +169,7 @@ rm -f fake printf "Checking for -lexpat... " printf "#include \nint main() { return 0; }\n" > build_check.c -$CXX $CXXFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_EXPAT=no @@ -183,6 +180,18 @@ else fi rm -f fake +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + printf "Checking for fb_config... " FB_VERSION=`fb_config --version 2> /dev/null` if [ "$?" != "0" ] @@ -190,7 +199,7 @@ then printf "no\n" printf "Checking for -lfbclient... " printf "int main() { return 0; }\n" > build_check.c - $CXX $CXXFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_FBCLIENT=no @@ -266,6 +275,7 @@ printf "CXX=$CXX\n" >> $CONFFILE printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/rlm_stg/Makefile b/projects/rlm_stg/Makefile index 1280bd91..548232a8 100644 --- a/projects/rlm_stg/Makefile +++ b/projects/rlm_stg/Makefile @@ -19,14 +19,13 @@ STGLIBS = crypto \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) LIBS += -ldl else LIBS += -lintl \ - -lc \ - -liconv + -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/rlm_stg/build b/projects/rlm_stg/build index e9be4ed0..4894491a 100755 --- a/projects/rlm_stg/build +++ b/projects/rlm_stg/build @@ -68,6 +68,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -137,6 +138,18 @@ else fi rm -f fake +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + printf "OS=$OS\n" > $CONFFILE printf "STG_TIME=yes\n" >> $CONFFILE printf "DEBUG=$DEBUG\n" >> $CONFFILE @@ -156,6 +169,7 @@ printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE printf "LIB_THREAD=$LIB_THREAD\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/rscriptd/Makefile b/projects/rscriptd/Makefile index 516894b6..98b2f5e4 100644 --- a/projects/rscriptd/Makefile +++ b/projects/rscriptd/Makefile @@ -19,12 +19,7 @@ STGLIBS = scriptexecuter \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) - -ifeq ($(OS),linux) -else -LIBS += -liconv -endif +LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) $(LIBICONV) SEARCH_DIRS = -I ../../include diff --git a/projects/rscriptd/build b/projects/rscriptd/build index da5c3b5b..a2926ed0 100755 --- a/projects/rscriptd/build +++ b/projects/rscriptd/build @@ -81,6 +81,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -94,6 +95,7 @@ else then DEFS="$DEFS -DDARWIN" LIB_THREAD=-lpthread + LIBICONV="" else LIB_THREAD=-lc_r fi @@ -154,6 +156,19 @@ else fi fi rm -f fake + +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + rm -f build_check.c printf "OS=$OS\n" > $CONFFILE @@ -177,6 +192,7 @@ printf "CXX=$CXX\n" >> $CONFFILE printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/sgauth/Makefile b/projects/sgauth/Makefile index c6c733f0..d6c844e0 100644 --- a/projects/sgauth/Makefile +++ b/projects/sgauth/Makefile @@ -18,13 +18,12 @@ STGLIBS = conffiles \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) else LIBS += -lintl \ - -lc \ - -liconv + -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/sgauth/build b/projects/sgauth/build index 0e7e5f01..cef1da1d 100755 --- a/projects/sgauth/build +++ b/projects/sgauth/build @@ -83,6 +83,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -96,6 +97,7 @@ else then DEFS="$DEFS -DDARWIN" LIB_THREAD=-lpthread + LIBICONV="" else LIB_THREAD=-lc_r fi @@ -156,6 +158,19 @@ else fi fi rm -f fake + +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + rm -f build_check.c printf "OS=$OS\n" > $CONFFILE @@ -179,6 +194,7 @@ printf "CXX=$CXX\n" >> $CONFFILE printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/sgauthstress/Makefile b/projects/sgauthstress/Makefile index 4884b213..74c09b62 100644 --- a/projects/sgauthstress/Makefile +++ b/projects/sgauthstress/Makefile @@ -15,14 +15,13 @@ STGLIBS = dotconfpp \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) LIBS += -ldl else LIBS += -lintl \ - -lc \ - -liconv + -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/sgauthstress/build b/projects/sgauthstress/build index 1593af28..dae35b74 100755 --- a/projects/sgauthstress/build +++ b/projects/sgauthstress/build @@ -86,6 +86,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -154,6 +155,19 @@ else fi fi rm -f fake + +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + rm -f build_check.c printf "Checking for fb_config... " @@ -163,7 +177,7 @@ then printf "no\n" printf "Checking for -lfbclient... " printf "int main() { return 0; }\n" > build_check.c - $CXX $CXXFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_FBCLIENT=no @@ -244,7 +258,7 @@ if [ $? != 0 ] then printf "no\n"; printf "Checking for -lpq... " - $CXX $CXXFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_PQ=no @@ -346,6 +360,7 @@ printf "CXX=$CXX\n" >> $CONFFILE printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/sgconf/Makefile b/projects/sgconf/Makefile index 3541a058..795c2522 100644 --- a/projects/sgconf/Makefile +++ b/projects/sgconf/Makefile @@ -17,12 +17,11 @@ STGLIBS = conffiles \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) -lexpat $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) -lexpat $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) else -LIBS += -lc \ - -liconv +LIBS += -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/sgconf/build b/projects/sgconf/build index 0b25a1ca..e2eb835b 100755 --- a/projects/sgconf/build +++ b/projects/sgconf/build @@ -80,6 +80,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -93,6 +94,7 @@ else then DEFS="$DEFS -DDARWIN" LIB_THREAD=-lpthread + LIBICONV="" else LIB_THREAD=-lc_r fi @@ -166,6 +168,19 @@ else printf "yes\n" fi rm -f fake + +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + rm -f build_check.c if [ "$CHECK_EXPAT" != "yes" ] @@ -196,6 +211,7 @@ printf "CXX=$CXX\n" >> $CONFFILE printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/sgconf/common_sg.cpp b/projects/sgconf/common_sg.cpp index 27f0b9f9..9c1b7283 100644 --- a/projects/sgconf/common_sg.cpp +++ b/projects/sgconf/common_sg.cpp @@ -259,7 +259,7 @@ if (cd == (iconv_t) -1) exit(ICONV_ERR_CODE); } -#if defined(FREE_BSD) || defined(FREE_BSD5) +#if defined(CONST_ICONV) nconv = iconv(cd, (const char **)&inbuf, &insize, &outbuf, &outsize); #else nconv = iconv(cd, &inbuf, &insize, &outbuf, &outsize); diff --git a/projects/sgconf/main.cpp b/projects/sgconf/main.cpp index e0ab43ce..b107ee95 100644 --- a/projects/sgconf/main.cpp +++ b/projects/sgconf/main.cpp @@ -369,7 +369,7 @@ if (cd == (iconv_t) -1) exit(ICONV_ERR_CODE); } -#if defined(FREE_BSD) || defined(FREE_BSD5) +#if defined(CONST_ICONV) nconv = iconv (cd, (const char**)&inbuf, &insize, &outbuf, &outsize); #else nconv = iconv (cd, &inbuf, &insize, &outbuf, &outsize); diff --git a/projects/sgconf_xml/Makefile b/projects/sgconf_xml/Makefile index bfb7b214..a7058b89 100644 --- a/projects/sgconf_xml/Makefile +++ b/projects/sgconf_xml/Makefile @@ -17,12 +17,11 @@ STGLIBS = conffiles \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) -lexpat $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) -lexpat $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) else -LIBS += -lc \ - -liconv +LIBS += -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/sgconf_xml/build b/projects/sgconf_xml/build index 7b83359b..a1084554 100755 --- a/projects/sgconf_xml/build +++ b/projects/sgconf_xml/build @@ -79,6 +79,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -149,7 +150,7 @@ rm -f fake printf "Checking for -lexpat... " printf "int main() { return 0; }\n" > build_check.c -$CC $CXXFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_EXPAT=no @@ -159,6 +160,19 @@ else printf "yes\n" fi rm -f fake + +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + rm -f build_check.c if [ "$CHECK_EXPAT" != "yes" ] @@ -189,6 +203,7 @@ printf "CXX=$CXX\n" >> $CONFFILE printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/sgconv/Makefile b/projects/sgconv/Makefile index ff6308ed..b463f175 100644 --- a/projects/sgconv/Makefile +++ b/projects/sgconv/Makefile @@ -18,12 +18,12 @@ STGLIBS = dotconfpp \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) LIBS += -ldl else -LIBS += -lc -liconv +LIBS += -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/sgconv/build b/projects/sgconv/build index edde35f9..1bc23718 100755 --- a/projects/sgconv/build +++ b/projects/sgconv/build @@ -85,6 +85,7 @@ then DEFS="$DEFS -DLINUX" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -99,6 +100,7 @@ else then DEFS="$DEFS -DDARWIN" LIB_THREAD=-lpthread + LIBICONV="" else LIB_THREAD=-lc_r fi @@ -160,6 +162,18 @@ else fi rm -f fake +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + printf "Checking for fb_config... " FB_VERSION=`fb_config --version 2> /dev/null` if [ "$?" != "0" ] @@ -167,7 +181,7 @@ then printf "no\n" printf "Checking for -lfbclient... " printf "int main() { return 0; }\n" > build_check.c - $CXX $CXXFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_FBCLIENT=no @@ -249,7 +263,7 @@ if [ $? != 0 ] then printf "no\n"; printf "Checking for -lpq... " - $CXX $CXXFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_PQ=no @@ -351,6 +365,7 @@ printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE printf "LIB_THREAD=$LIB_THREAD\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/stargazer/Makefile b/projects/stargazer/Makefile index 0fbccd32..e127d4f8 100644 --- a/projects/stargazer/Makefile +++ b/projects/stargazer/Makefile @@ -33,12 +33,12 @@ STGLIBS = scriptexecuter \ STGLIBS_INCS = $(addprefix -I ../../stglibs/,$(addsuffix .lib/include,$(STGLIBS))) STGLIBS_LIBS = $(addprefix -L ../../stglibs/,$(addsuffix .lib,$(STGLIBS))) -LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) +LIBS += $(addprefix -lstg,$(STGLIBS)) $(LIB_THREAD) $(LIBICONV) ifeq ($(OS),linux) LIBS += -ldl else -LIBS += -lc -liconv +LIBS += -lc endif SEARCH_DIRS = -I ../../include diff --git a/projects/stargazer/build b/projects/stargazer/build index 238ae194..80d17d00 100755 --- a/projects/stargazer/build +++ b/projects/stargazer/build @@ -117,6 +117,7 @@ then capture/ether_linux" LIB_THREAD=-lpthread else + LIBICONV="-liconv" if [ "$OS" = "bsd" ] then DEFS="$DEFS -DFREE_BSD" @@ -131,6 +132,7 @@ else then DEFS="$DEFS -DDARWIN" LIB_THREAD=-lpthread + LIBICONV="" else LIB_THREAD=-lc_r fi @@ -197,7 +199,7 @@ rm -f fake printf "Checking for -lexpat... " printf "#include \nint main() { return 0; }\n" > build_check.c -$CXX $CXXFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_EXPAT=no @@ -208,6 +210,18 @@ else fi rm -f fake +printf "Checking for iconv 2nd argument... " +printf "#include \nint main(){ const char** src = 0; iconv(0, src, 0, 0, 0); }\n" > build_check.c +$CC $CFLAGS $LDFLAGS -Werror build_check.c $LIBICONV -o fake > /dev/null 2> /dev/null +if [ $? != 0 ] +then + printf "non-const\n" +else + DEFS="$DEFS -DCONST_ICONV" + printf "const\n" +fi +rm -f fake + printf "Checking for fb_config... " FB_VERSION=`fb_config --version 2> /dev/null` if [ "$?" != "0" ] @@ -215,7 +229,7 @@ then printf "no\n" printf "Checking for -lfbclient... " printf "int main() { return 0; }\n" > build_check.c - $CXX $CXXFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_FBCLIENT=no @@ -258,7 +272,7 @@ if [ $? != 0 ] then printf "no\n"; printf "Checking for -lmysqlclient... " - $CXX $CXXFLAGS $LDFLAGS build_check.c -lmysqlclient_r $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lmysqlclient_r $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_MYSQLCLIENT=no @@ -300,7 +314,7 @@ if [ $? != 0 ] then printf "no\n"; printf "Checking for -lpq... " - $CXX $CXXFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_PQ=no @@ -340,7 +354,7 @@ if [ $? != 0 ] then printf "no\n"; printf "Checking for -lxmlrpc... " - $CXX $CXXFLAGS $LDFLAGS build_check.c -lxmlrpc $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lxmlrpc $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_XMLRPC=no @@ -379,7 +393,7 @@ fi printf "Checking for -lnfnetlink... " printf "#include \n#include \n#include \nint main() { return 0; }\n" > build_check.c -$CXX $CXXFLAGS $LDFLAGS build_check.c -lnfnetlink -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lnfnetlink -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_NFNETLINK=no @@ -393,7 +407,7 @@ rm -f fake printf "Checking for -lnetfilter_queue... " printf "#include \n#include \nint main() { return 0; }\n" > build_check.c -$CXX $CXXFLAGS $LDFLAGS build_check.c -lnetfilter_queue -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lnetfilter_queue -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_NFQ=no @@ -411,7 +425,7 @@ then printf "#include \n" > build_check.c printf "#include \n" >> build_check.c printf "int main() { return 0; }\n" >> build_check.c - $CXX $CXXFLAGS $LDFLAGS build_check.c -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_IP_QUEUE_H=no @@ -530,6 +544,7 @@ printf "CXXFLAGS=$CXXFLAGS\n" >> $CONFFILE printf "CFLAGS=$CFLAGS\n" >> $CONFFILE printf "LDFLAGS=$LDFLAGS\n" >> $CONFFILE printf "LIB_THREAD=$LIB_THREAD\n" >> $CONFFILE +printf "LIBICONV=$LIBICONV\n" >> $CONFFILE printf "PREFIX=$PREFIX\n" >> $CONFFILE printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE diff --git a/projects/stargazer/plugins/configuration/rpcconfig/Makefile b/projects/stargazer/plugins/configuration/rpcconfig/Makefile index 732b0e11..c647f752 100644 --- a/projects/stargazer/plugins/configuration/rpcconfig/Makefile +++ b/projects/stargazer/plugins/configuration/rpcconfig/Makefile @@ -16,11 +16,8 @@ SRCS = ./rpcconfig.cpp \ ./messages_methods.cpp LIBS += $(XMLRPC_LDFLAGS) \ - $(LIB_THREAD) - -ifneq ($(OS),linux) -LIBS += -liconv -endif + $(LIB_THREAD) \ + $(LIBICONV) STGLIBS = common \ logger \ diff --git a/stglibs/common.lib/Makefile b/stglibs/common.lib/Makefile index 33f29440..932e2709 100644 --- a/stglibs/common.lib/Makefile +++ b/stglibs/common.lib/Makefile @@ -13,8 +13,6 @@ SRCS = common.cpp \ INCS = common.h \ blockio.h -ifneq ($(OS),linux) -LIBS += -liconv -endif +LIBS += $(LIBICONV) include ../Makefile.in diff --git a/stglibs/common.lib/common.cpp b/stglibs/common.lib/common.cpp index d91c1795..22ec354b 100644 --- a/stglibs/common.lib/common.cpp +++ b/stglibs/common.lib/common.cpp @@ -899,7 +899,7 @@ strncpy(inBuf, source.c_str(), source.length()); inBuf[source.length()] = 0; -#if defined(FREE_BSD) || defined(FREE_BSD5) || defined(WIN32) +#if defined(CONST_ICONV) const char * srcPos = inBuf; #else char * srcPos = inBuf;