[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16833074#comment-16833074 ] Michael Osipov commented on SERF-193: - For the same of Unix portabilitiy, some might prefer GNU autoconf because it is just shell... > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16833073#comment-16833073 ] Michael Osipov commented on SERF-193: - The problem is not just non-mainstream, but CMake not doing things right, but that's another story. I will get back to you via mailing list when I have some spare cycles. I worked on the GSS-API testing with Lieven back then and it worked out very well. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16833064#comment-16833064 ] Branko Čibej commented on SERF-193: --- Any improvements to the CMake build for non-mainstream platforms are welcome. Once we support GSSAPI and Brotli in CMake (on at least Windows, macOS and Linux), the SCons build will be retired. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16832879#comment-16832879 ] Michael Osipov commented on SERF-193: - I have just tried cmake. I don't know what's worse: cmake or scons. Cmake screwed up a lot: {noformat} LDFLAGS="-Wl,+concatrpath -Wl,+b -Wl,$LIBDIR -L$LIBDIR $($PREFIX/bin/krb5-config gssapi --libs)" CC=/opt/aCC/bin/cc CFLAGS="-DSERF_HAVE_GSSAPI" cmake -DCMAKE_INSTALL_PREFIX:PATH=$PREFIX -DCMAKE_INSTALL_LIBDIR:PATH=$LIBDIR APR_ROOT=$PREFIX APRUtil_ROOT=$PREFIX OPENSSL_ROOT_DIR=/opt/openssl -DGSSAPI=$PREFIX ZLIB_ROOT=$PREFIX -DZLIB_LIBRARY=$PREFIX/lib/hpux32/libz.so.1.2.11 .. {noformat} * It kill the entire rpath * does not switch C++ compiler in C mode * FindZlib.cmake is not aware of hpux32, hpux64 * There is no {{--libdir}} equivalent for cmake, one has to do this manually. I'd take some decent amount of time to fix this in the {{CMakeLists.txt}} as well as in the CMake supplied modules. I am confined to 3.9 and highly doubt that Kitware will accept patches for 3.9.x since this is the last version to support HP-UX. I guess I will go with scons for now. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16830441#comment-16830441 ] Michael Osipov commented on SERF-193: - ...and I don't expect the cast to be added. I will into how this can fixed w/o much hassle. As I said, cmake is currently no option. when I will have same time, I'd get around to take a look at {{GSSAPI.cmake}}. It maybe easier to steal from somewhere else if the license allows to. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16830428#comment-16830428 ] Branko Čibej commented on SERF-193: --- Yes, you can _use_ the Serf API from C++, but you're not really supposed to _compile_ Serf as C++. No, we will _not_ be adding a bunch of casts to calls to {{malloc()}} (or {{apr_p[c]alloc()}}) — that's the only important difference between C and C++ anyway. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16830422#comment-16830422 ] Michael Osipov commented on SERF-193: - One more one, one *can* safely use a C++ compiler because of: {noformat} bash-5.0# grep -r 'extern "C"' . ./auth/auth.h:extern "C" { ./auth/auth_spnego.h:extern "C" { ./serf.h:extern "C" { ./serf_bucket_types.h:extern "C" { ./serf_bucket_util.h:extern "C" { {noformat} > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16830390#comment-16830390 ] Michael Osipov commented on SERF-193: - I did add {{CFLAGS}}. {{aCC}} is already best in class for that platform. I just expect the system to pass those flags automatically. I will just raise one with scons. I will go with the README patch. CMake is currently not an option because I strictly require MIT Kerberos buitin. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SERF-193) C++ compiler is not started in C mode
[ https://issues.apache.org/jira/browse/SERF-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16830346#comment-16830346 ] Branko Čibej commented on SERF-193: --- Make up your mind, eh. First you said the code doesn't compile with a C++ compiler, which is expected since it's C code. Now you want special flags to enable ANSI C. You can do the latter by adding a {{CFLAGS=}} option to {{scons}} (and you can select a different compiler with the {{CC=}} option). We'll be happy to review any patches for README if you provide them. I also suggest trying the CMake-based build on trunk, although that currently doesn't support GSSAPI and Brotli. > C++ compiler is not started in C mode > - > > Key: SERF-193 > URL: https://issues.apache.org/jira/browse/SERF-193 > Project: serf > Issue Type: Bug >Affects Versions: serf-1.3.9 >Reporter: Michael Osipov >Priority: Major > > I get the following errors with aCC on HP-UX: > {noformat} > /opt/aCC/bin/aCC -o context.o -c -O2 -g -mt -DNDEBUG -DHPUX11 -D_REENTRANT > -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE -DSERF_HAVE_GSSAPI -I. > -I/opt/ports/include -I/opt/openssl/include context.c > "context.c", line 40: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = progress_baton; > ^ > "context.c", line 131: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_context_t *" > serf_context_t *ctx = apr_pcalloc(pool, sizeof(*ctx)); > ^ > "context.c", line 142: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_pollset_t *" > serf_pollset_t *ps = apr_pcalloc(pool, sizeof(*ps)); >^ > "context.c", line 206: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = serf_baton; > ^ > "context.c", line 303: error #2144: a value of type "void *" cannot be used to > initialize an entity of type "serf_io_baton_t *" > serf_io_baton_t *io = desc->client_data; > ^ > {noformat} > aCC is a C++ compiler and C++ requires casts on {{malloc()}} and friends. I > know that a lot of configure scripts test for {{-Ae}} and this switch is > necessary for aCC, likely for other C++ compilers too. I don't know whether > this has to be fixed in {{SConstruct}} or scons itself. -- This message was sent by Atlassian JIRA (v7.6.3#76005)