Add support for the --with-cxx configure option. Probably the 'c++' USE can be reused here, because it is obeyed in boehm-gc. (At least in versions 6.3 and 6.4. It seems to be dropped in the latter...)
ok. seems like a reasonable request.
Ran into some problems with the sockets support: /var/tmp/portage/ecls-0.9h-r1/work/ecl-0.9h/build/ext/sockets.c: In function `cl_lispunion* LC30socket_accept(cl_lispunion*)': /var/tmp/portage/ecls-0.9h-r1/work/ecl-0.9h/build/ext/sockets.c:892: error: invalid conversion from `int*' to `socklen_t*' /var/tmp/portage/ecls-0.9h-r1/work/ecl-0.9h/build/ext/sockets.c:892: error: initializing argument 3 of `int accept(int, sockaddr*, socklen_t*)' ...
(In reply to comment #2) > Ran into some problems with the sockets support: > > /var/tmp/portage/ecls-0.9h-r1/work/ecl-0.9h/build/ext/sockets.c: In function > `cl_lispunion* LC30socket_accept(cl_lispunion*)': > /var/tmp/portage/ecls-0.9h-r1/work/ecl-0.9h/build/ext/sockets.c:892: error: > invalid conversion from `int*' to `socklen_t*' > /var/tmp/portage/ecls-0.9h-r1/work/ecl-0.9h/build/ext/sockets.c:892: error: > initializing argument 3 of `int accept(int, sockaddr*, socklen_t*)' > ... > Same here. I tried both with GCC 3.3.6 and GCC 3.4.4. The problem seems to be in the socket code only, 'cause when I managed to compile it without --with-tcp.
Created attachment 79725 [details, diff] untested patch This is an untested patch against the CVS HEAD. But since it is in a contrib file, I'd guess it hadn't changed for some time.
It looks like the local socket interface in ECL hasn't been tested with the --with-cxx configuration. Attached is a patch which should fix the build errors. I will try to send it up stream if it also works for you.
Created attachment 79781 [details, diff] 0.9h-sockets-c++-gentoo.patch This diff against ecl-0.9h also includes changes to sockets.lisp from CVS HEAD (of which there were few changes).
0.9h-r1 understands a c++ USE flag which will cause ECL to be built with the c++ compiler.
Looks like it works. I don't have test code for sockets, though, so all I can say is, that it compiles. Thank you.
Created attachment 79820 [details] ecls file list This is the result of running "equery files ecls". Is it normal?
That is odd, but I can offer a theory -- 15 Feb 2006; Matthew Kennedy <mkennedy@gentoo.org> files/0.9h-sockets-c++-gentoo.patch: Fixed a problem where CVS keywords in patch get changed by repoman commit which caused the patch to fail to apply. Although I didn't experience such an equery files result, perhaps you emerged ecl while that problem existed in portage. Try emerge sync and then re-emerge ecl. Does the equery files output persist?