You can subscribe to this list here.
| 2000 |
Jan
(81) |
Feb
(55) |
Mar
(459) |
Apr
(159) |
May
(126) |
Jun
(69) |
Jul
(48) |
Aug
(29) |
Sep
(106) |
Oct
(76) |
Nov
(155) |
Dec
(161) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(122) |
Feb
(150) |
Mar
(294) |
Apr
(124) |
May
(197) |
Jun
(266) |
Jul
(111) |
Aug
(259) |
Sep
(163) |
Oct
(142) |
Nov
(101) |
Dec
(86) |
| 2002 |
Jan
(187) |
Feb
(108) |
Mar
(274) |
Apr
(157) |
May
(346) |
Jun
(242) |
Jul
(345) |
Aug
(187) |
Sep
(263) |
Oct
(69) |
Nov
(30) |
Dec
(76) |
| 2003 |
Jan
(125) |
Feb
(191) |
Mar
(87) |
Apr
(69) |
May
(107) |
Jun
(66) |
Jul
(112) |
Aug
(161) |
Sep
(184) |
Oct
(137) |
Nov
(28) |
Dec
(61) |
| 2004 |
Jan
(148) |
Feb
(99) |
Mar
(365) |
Apr
(225) |
May
(311) |
Jun
(204) |
Jul
(95) |
Aug
(214) |
Sep
(256) |
Oct
(290) |
Nov
(239) |
Dec
(152) |
| 2005 |
Jan
(253) |
Feb
(183) |
Mar
(178) |
Apr
(88) |
May
(175) |
Jun
(195) |
Jul
(122) |
Aug
(81) |
Sep
(119) |
Oct
(200) |
Nov
(110) |
Dec
(179) |
| 2006 |
Jan
(154) |
Feb
(64) |
Mar
(55) |
Apr
(69) |
May
(66) |
Jun
(64) |
Jul
(80) |
Aug
(59) |
Sep
(62) |
Oct
(90) |
Nov
(132) |
Dec
(106) |
| 2007 |
Jan
(58) |
Feb
(51) |
Mar
(59) |
Apr
(19) |
May
(33) |
Jun
(52) |
Jul
(15) |
Aug
(50) |
Sep
(41) |
Oct
(259) |
Nov
(323) |
Dec
(136) |
| 2008 |
Jan
(205) |
Feb
(128) |
Mar
(203) |
Apr
(126) |
May
(307) |
Jun
(166) |
Jul
(259) |
Aug
(181) |
Sep
(217) |
Oct
(265) |
Nov
(256) |
Dec
(132) |
| 2009 |
Jan
(104) |
Feb
(81) |
Mar
(27) |
Apr
(21) |
May
(85) |
Jun
(237) |
Jul
(243) |
Aug
(199) |
Sep
(178) |
Oct
(151) |
Nov
(64) |
Dec
(39) |
| 2010 |
Jan
(33) |
Feb
(146) |
Mar
(125) |
Apr
(109) |
May
(52) |
Jun
(135) |
Jul
(103) |
Aug
(68) |
Sep
(99) |
Oct
(88) |
Nov
(45) |
Dec
(56) |
| 2011 |
Jan
(19) |
Feb
(32) |
Mar
(50) |
Apr
(105) |
May
(46) |
Jun
(22) |
Jul
(101) |
Aug
(80) |
Sep
(52) |
Oct
(16) |
Nov
(10) |
Dec
(29) |
| 2012 |
Jan
(8) |
Feb
(22) |
Mar
(17) |
Apr
(68) |
May
(19) |
Jun
(19) |
Jul
(12) |
Aug
(6) |
Sep
(13) |
Oct
(5) |
Nov
(5) |
Dec
(5) |
| 2013 |
Jan
(6) |
Feb
(4) |
Mar
(3) |
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(6) |
Dec
|
| 2014 |
Jan
|
Feb
|
Mar
(16) |
Apr
(1) |
May
(8) |
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2015 |
Jan
|
Feb
(8) |
Mar
(23) |
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
(7) |
Sep
(1) |
Oct
|
Nov
|
Dec
(5) |
| 2016 |
Jan
|
Feb
|
Mar
(16) |
Apr
(6) |
May
(53) |
Jun
(19) |
Jul
(3) |
Aug
(39) |
Sep
(24) |
Oct
(2) |
Nov
(19) |
Dec
|
| 2017 |
Jan
(13) |
Feb
(44) |
Mar
(208) |
Apr
(12) |
May
(94) |
Jun
(54) |
Jul
(18) |
Aug
(52) |
Sep
(12) |
Oct
(22) |
Nov
(27) |
Dec
(93) |
| 2018 |
Jan
(85) |
Feb
(28) |
Mar
(16) |
Apr
(47) |
May
(16) |
Jun
(15) |
Jul
(10) |
Aug
(3) |
Sep
(5) |
Oct
|
Nov
(6) |
Dec
|
| 2019 |
Jan
(4) |
Feb
(6) |
Mar
(12) |
Apr
(1) |
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
| 2020 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
| 2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
| 2022 |
Jan
(2) |
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(10) |
Oct
(5) |
Nov
|
Dec
|
| 2023 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
|
Apr
(9) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
(28) |
Dec
(3) |
| 2025 |
Jan
(8) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
|
1
|
2
|
|
3
|
4
|
5
(5) |
6
(5) |
7
(2) |
8
(5) |
9
(1) |
|
10
(1) |
11
|
12
|
13
|
14
|
15
|
16
|
|
17
|
18
|
19
(4) |
20
(8) |
21
(4) |
22
(1) |
23
|
|
24
(1) |
25
(6) |
26
(3) |
27
|
28
(5) |
29
|
30
(1) |
|
From: <cli...@li...> - 2007-06-30 19:03:22
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src TODO,1.131,1.132 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Fri, 29 Jun 2007 20:21:13 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src TODO,1.131,1.132 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv2560/src Modified Files: TODO Log Message: remove an obsolete entry Index: TODO =================================================================== RCS file: /cvsroot/clisp/clisp/src/TODO,v retrieving revision 1.131 retrieving revision 1.132 diff -u -d -r1.131 -r1.132 --- TODO 1 Dec 2006 14:45:44 -0000 1.131 +++ TODO 29 Jun 2007 20:21:10 -0000 1.132 @@ -165,10 +165,6 @@ check-redefinition -(format nil "~G" 1d23) => "099999999999999990000000.0 " -http://sourceforge.net/tracker/index.php?func=detail&aid=1389060&group_id=1355&atid=101355 - - contagion warnings: engineering vs portability <" rel="nofollow">http://sourceforge.net/mailarchive/message.php?msg_id=10935288> <" rel="nofollow">http://article.gmane.org/gmane.lisp.clisp.devel:13758> ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 14 ***************************************** |
|
From: Sam S. <sd...@gn...> - 2007-06-28 19:03:07
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> +
> + /* Generate environment list. Note this is useless work if
> + :environment is not specified. */
> + var uintL envlist_count = 0;
> + var uintL envbuf_len = 1 +
> + stringlist_to_asciizlist(STACK_0,&O(misc_encoding),&envlist_count);
> + var DYNAMIC_ARRAY(env,char*,(uintL)envlist_count+1);
> + var DYNAMIC_ARRAY(envdata,char,envbuf_len);
> + curcons = STACK_0;
> + var char** envptr = &env[0];
> + var char* envdataptr = &envdata[0];
> + while (consp(curcons)) {
> + var uintL len = Sbvector_length(Car(curcons));
> + var char* ptr = TheAsciz(Car(curcons));
> + *envptr++ = envdataptr; /* fill into env */
> + dotimespL(len,len, { *envdataptr++ = *ptr++; } ); /* and copy */
> + curcons = Cdr(curcons);
> + };
> + *envptr = NULL; /* and conclude with null */
> + skipSTACK(1);
we already have GETENV which return the environment as an alist of
variables and values. I think this :ENVIRONMENT argument should accept
an alist too.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGhAXgPp1Qsf2qnMcRAkF2AJ4sLEbQ+gew21Wci51GpsQnQqvKXACeMYiK
dirIbmpWjHxeB0EDS+gro2I=
=aoCF
-----END PGP SIGNATURE-----
|
|
From: <cli...@li...> - 2007-06-28 19:02:49
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src pathname.d,1.397,1.398 ChangeLog,1.5535,1.5536 (Sam Steingold) 2. clisp/src pathname.d,1.398,1.399 ChangeLog,1.5536,1.5537 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Thu, 28 Jun 2007 15:48:45 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src pathname.d,1.397,1.398 ChangeLog,1.5535,1.5536 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv30549/src Modified Files: pathname.d ChangeLog Log Message: (make_launch_pipe): do not access STACK, accept pointers into it instead Index: pathname.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/pathname.d,v retrieving revision 1.397 retrieving revision 1.398 diff -u -d -r1.397 -r1.398 --- pathname.d 25 Jun 2007 15:02:40 -0000 1.397 +++ pathname.d 28 Jun 2007 15:48:40 -0000 1.398 @@ -8482,14 +8482,14 @@ return (*h != INVALID_HANDLE); } -local maygc void make_launch_pipe (gcv_object_t *ret, bool parent_inputp, - Handle hparent_pipe, int childpid) -{ +local maygc void make_launch_pipe +(gcv_object_t *ret, bool parent_inputp, Handle hparent_pipe, int childpid, + gcv_object_t *enc, gcv_object_t *eltype, gcv_object_t *buffered) { if (hparent_pipe != INVALID_HANDLE) { - pushSTACK(STACK_7); /* encoding */ - pushSTACK(STACK_(8+1)); /* element-type */ - pushSTACK(STACK_(6+2)); /* buffered */ - *ret = (parent_inputp?mkips_from_handles:mkops_from_handles) + pushSTACK(*enc); /* encoding */ + pushSTACK(*eltype); /* element-type */ + pushSTACK(*buffered); /* buffered */ + *ret = (parent_inputp ? mkips_from_handles : mkops_from_handles) (hparent_pipe,childpid); /* replace :PIPE with PIPE-x-STREAM */ /* stack has been cleaned by callee */ } @@ -8734,20 +8734,23 @@ if (herror!=stderr_handle) ParaClose(herror); end_system_call(); #endif - /* make pipe-streams */ - /* child's input stream, pipe-output from our side */ - make_launch_pipe (&(STACK_3), false, hparent_out, child_id); - /* child's output stream, pipe-input from our side - double analysis of buffered, eltype,encoding - drawback: slow; advantage: simple iface with stream.d */ - make_launch_pipe (&(STACK_2), true, hparent_in, child_id); - /* child's error stream, pipe-input from our side */ - make_launch_pipe (&(STACK_1), true, hparent_errin, child_id); - + { /* make pipe-streams */ + gcv_object_t *buff = &STACK_6; /* :BUFFERED */ + gcv_object_t *enc = &STACK_7; /* :ENCODING */ + gcv_object_t *eltype = &STACK_8; /* :ELEMENT-TYPE */ + /* child's input stream, pipe-output from our side */ + make_launch_pipe(&(STACK_3),false,hparent_out,child_id,enc,eltype,buff); + /* child's output stream, pipe-input from our side + double analysis of buffered, eltype,encoding + drawback: slow; advantage: simple iface with stream.d */ + make_launch_pipe(&(STACK_2),true,hparent_in,child_id,enc,eltype,buff); + /* child's error stream, pipe-input from our side */ + make_launch_pipe(&(STACK_1),true,hparent_errin,child_id,enc,eltype,buff); + } value1 = wait_p ? fixnum(exit_code) : L_to_I(child_id); - value2 = (hparent_out != INVALID_HANDLE) ? (object)STACK_3 : NIL; /* INPUT */ - value3 = (hparent_in != INVALID_HANDLE) ? (object)STACK_2 : NIL; /* OUTPUT */ - value4 = (hparent_errin != INVALID_HANDLE) ? (object)STACK_1 : NIL; /* ERROR */ + value2 = (hparent_out != INVALID_HANDLE) ? (object)STACK_3 : NIL; /*INPUT*/ + value3 = (hparent_in != INVALID_HANDLE) ? (object)STACK_2 : NIL; /*OUTPUT*/ + value4 = (hparent_errin != INVALID_HANDLE) ? (object)STACK_1 : NIL; /*ERROR*/ mv_count = 4; skipSTACK(10); Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5535 retrieving revision 1.5536 diff -u -d -r1.5535 -r1.5536 --- ChangeLog 26 Jun 2007 13:23:00 -0000 1.5535 +++ ChangeLog 28 Jun 2007 15:48:41 -0000 1.5536 @@ -1,3 +1,8 @@ +2007-06-28 Sam Steingold <sd...@gn...> + + * pathname.d (make_launch_pipe): do not access STACK, accept + pointers into it instead + 2007-06-25 Jack Unrue <jd...@gm...> * modules/syscalls/calls.c (FMTID_SummaryInformation) ------------------------------ Message: 2 Date: Thu, 28 Jun 2007 15:54:54 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src pathname.d,1.398,1.399 ChangeLog,1.5536,1.5537 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv337/src Modified Files: pathname.d ChangeLog Log Message: (init_launch_streamarg): accept a pointer into STACK instead of an index Index: pathname.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/pathname.d,v retrieving revision 1.398 retrieving revision 1.399 diff -u -d -r1.398 -r1.399 --- pathname.d 28 Jun 2007 15:48:40 -0000 1.398 +++ pathname.d 28 Jun 2007 15:54:49 -0000 1.399 @@ -8448,21 +8448,20 @@ #endif -local maygc bool init_launch_streamarg (int istack, bool child_inputp, - Handle stdhandle, Handle * h, Handle * ph, - Handle * hnull, bool * wait_p) -{ +local maygc bool init_launch_streamarg +(gcv_object_t *streamarg, bool child_inputp, Handle stdhandle, + Handle * h, Handle * ph, Handle * hnull, bool * wait_p) { var int handletype = 0; *h = INVALID_HANDLE; *ph = INVALID_HANDLE; - if (boundp(STACK_(istack)) && eq(STACK_(istack),S(Kterminal)) - || !boundp(STACK_(istack))) + if (boundp(*streamarg) && eq(*streamarg,S(Kterminal)) + || !boundp(*streamarg)) *h = handle_dup(stdhandle); - else if (nullp(STACK_(istack))) { + else if (nullp(*streamarg)) { if (*hnull == INVALID_HANDLE) *hnull = nullfile(); *h = handle_dup(*hnull); - } else if (eq(STACK_(istack),S(Kpipe))) { + } else if (eq(*streamarg,S(Kpipe))) { if (child_inputp) /* make an input pipe for child, ph = parent's handle */ mkpipe(h,true,ph,false); @@ -8473,9 +8472,8 @@ return false; *wait_p = false; /* TODO: error when wait_p */ } else { - *h = handle_dup(stream_lend_handle(&(STACK_(istack)), - child_inputp,/* child i/o direction is the same as lisp user i/o direction */ - &handletype)); + /* child i/o direction is the same as lisp user i/o direction */ + *h = handle_dup(stream_lend_handle(streamarg,child_inputp,&handletype)); if (handletype != 1) return false; } @@ -8557,13 +8555,13 @@ var Handle hinput; var Handle hparent_out; /* in case of pipe */ /* STACK_3 == input_stream_arg */ - if (!init_launch_streamarg(3, true, stdin_handle, &hinput, &hparent_out, - &hnull,&wait_p)) + if (!init_launch_streamarg(&STACK_3, true, stdin_handle, &hinput, + &hparent_out, &hnull, &wait_p)) OS_error(); var Handle houtput, hparent_in; /* STACK_2 == output_stream_arg */ - if (!init_launch_streamarg(2, false, stdout_handle, &houtput, &hparent_in, - &hnull,&wait_p)) { + if (!init_launch_streamarg(&STACK_2, false, stdout_handle, &houtput, + &hparent_in, &hnull, &wait_p)) { begin_system_call(); if (hinput != INVALID_HANDLE && hinput != stdin_handle) ParaClose(hinput); @@ -8574,8 +8572,8 @@ } var Handle herror, hparent_errin; /* STACK_1 == error_stream_arg */ - if (!init_launch_streamarg(1, false, stderr_handle, &herror, &hparent_errin, - &hnull,&wait_p)) { + if (!init_launch_streamarg(&STACK_1, false, stderr_handle, &herror, + &hparent_errin, &hnull, &wait_p)) { begin_system_call(); if (hinput != INVALID_HANDLE && hinput != stdin_handle) ParaClose(hinput); Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5536 retrieving revision 1.5537 diff -u -d -r1.5536 -r1.5537 --- ChangeLog 28 Jun 2007 15:48:41 -0000 1.5536 +++ ChangeLog 28 Jun 2007 15:54:50 -0000 1.5537 @@ -2,6 +2,7 @@ * pathname.d (make_launch_pipe): do not access STACK, accept pointers into it instead + (init_launch_streamarg): accept a pointer into STACK instead of an index 2007-06-25 Jack Unrue <jd...@gm...> ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 13 ***************************************** |
|
From: Sam S. <sd...@gn...> - 2007-06-28 18:21:47
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> +local inline void make_pipe_io_stream_helper (object command, int inputp, int outputp, object element_type, object external_format, object buffered)
> +{
> + pushSTACK(asciz_to_string(SHELL,O(pathname_encoding)));
> +
> + /* Prepare :arguments */
> + pushSTACK(S(Karguments));
> + pushSTACK(asciz_to_string("-c",O(pathname_encoding)));
> + pushSTACK(command);
> + funcall(L(list), 2);
> + pushSTACK(value1);
> +
> + /* Prepare remaining arguments */
> + pushSTACK(S(Kelement_type));
> + pushSTACK(element_type);
> +
> + pushSTACK(S(Kexternal_format));
> + pushSTACK(external_format);
> +
> + pushSTACK(S(Kbuffered));
> + pushSTACK(buffered);
> +
> + if (inputp) {
> + pushSTACK(S(Koutput));
> + pushSTACK(S(Kpipe));
> + }
> + if (outputp) {
> + pushSTACK(S(Kinput));
> + pushSTACK(S(Kpipe));
> + }
> +
> + funcall(L(launch), inputp && outputp ? 13:11);
> + if (inputp && outputp)
> + VALUES1(make_twoway_stream (value3, value2));
> + else if (inputp)
> + VALUES1(value3);
> + else if (outputp)
> + VALUES1(value2);
> + else
> + NOTREACHED;
> +}
1. missing initial comment.
2. missing "maygc" annotation.
3. GC-safety violated: you cannot use any of your "object" variables
after asciz_to_string(); this will be detected by a C++ build. please
try it to see how it works.
> # (MAKE-PIPE-INPUT-STREAM command [:element-type] [:external-format] [:buffered])
> # calls a shell, that executes command, whereby its Standard-Output
> # is directed into our pipe.
> LISPFUN(make_pipe_input_stream,seclass_default,1,0,norest,key,3,
> (kw(element_type),kw(external_format),kw(buffered)) )
> +{
> + var object buffered = popSTACK();
> + var object external_format = popSTACK();
> + var object element_type = popSTACK();
> + var object command = popSTACK();
>
> + make_pipe_io_stream_helper (command, 1, 0, element_type, external_format, buffered);
> +}
when we are ready to take the dive, we will just move MAKE-PIPE-*-STREAM
into lisp and deprecate them (see deprecated.lisp)
thanks for your patch.
let us concentrate on the additional LAUNCH args for now.
I think I am ready for "attempt 2". :-)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGg/wwPp1Qsf2qnMcRAkrTAJ9KEE1yRD7w6RS5HNEzX5aCGFiWIgCdHx32
BPJNPXELrjsQqI+VII9KpM0=
=LOPq
-----END PGP SIGNATURE-----
|
|
From: Sam S. <sd...@gn...> - 2007-06-28 18:11:40
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Shawn Betts wrote:
> -LISPFUN(launch,seclass_default,1,0,norest,key,9,
> +LISPFUN(launch,seclass_default,1,0,norest,key,11,
> (kw(element_type),kw(external_format),kw(buffered),kw(arguments),
> - kw(wait),kw(input),kw(output),kw(error),kw(priority))) {
> + kw(wait),kw(input),kw(output),kw(error),kw(priority),kw(new_group),kw(environment))) {
1. if you prepend the new arguments instead of appending them, you will
not have to renumber STACK accesses.
2. your patch does not implement the new arguments for woe32.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGg/nJPp1Qsf2qnMcRAkJDAJ0T+1GZXzD8hsYO8/5LqwSCT26zJwCfXSzk
Ok22PV/30kaC4QjVtOMPefg=
=qTXF
-----END PGP SIGNATURE-----
|
|
From: Sam S. <sd...@gn...> - 2007-06-28 15:48:06
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Shawn Betts wrote:
> @@ -8264,9 +8191,9 @@
> LISPFUN(shell,seclass_default,0,1,norest,nokey,0,NIL) {
> var object command = popSTACK();
> if (missingp(command)) {
> - /* execute (EXECUTE shell) : */
> + /* launch (LAUNCH shell) : */
> pushSTACK(O(user_shell)); /* Shell-Name */
> - funcall(L(execute),1);
> + funcall(L(launch),1);
> } else {
> /* call (EXECUTE shell "-c" command): */
> pushSTACK(O(command_shell)); /* shell name */
> @@ -8486,9 +8413,9 @@
why did you keep "execute" for the "else" branch?
if you switch it to "launch" too, you will be able to drop execute out
of C into Lisp!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGg9gnPp1Qsf2qnMcRApTPAJ4zKAPwS7lw4tXvLAiDE/rphCrwjQCgmfCz
fWxIF4wfyrgP0Bdqa+9EfLY=
=vYBX
-----END PGP SIGNATURE-----
|
|
From: <cli...@li...> - 2007-06-26 19:16:29
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src ChangeLog,1.5534,1.5535 (Sam Steingold) 2. clisp/modules/syscalls calls.c,1.173,1.174 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Tue, 26 Jun 2007 13:23:03 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src ChangeLog,1.5534,1.5535 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv6807/src Modified Files: ChangeLog Log Message: (FMTID_SummaryInformation, FMTID_UserDefinedProperties): provide local definitions to support build using MinGW w32api 3.9 By Jack Unrue <jd...@gm...> Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5534 retrieving revision 1.5535 diff -u -d -r1.5534 -r1.5535 --- ChangeLog 25 Jun 2007 15:02:57 -0000 1.5534 +++ ChangeLog 26 Jun 2007 13:23:00 -0000 1.5535 @@ -1,3 +1,9 @@ +2007-06-25 Jack Unrue <jd...@gm...> + + * modules/syscalls/calls.c (FMTID_SummaryInformation) + (FMTID_UserDefinedProperties): provide local definitions + to support build using MinGW w32api 3.9 + 2007-06-25 Sam Steingold <sd...@gn...> * pathname.d (interpret_launch_priority): do not access STACK, ------------------------------ Message: 2 Date: Tue, 26 Jun 2007 13:23:03 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/modules/syscalls calls.c,1.173,1.174 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/modules/syscalls In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv6807/modules/syscalls Modified Files: calls.c Log Message: (FMTID_SummaryInformation, FMTID_UserDefinedProperties): provide local definitions to support build using MinGW w32api 3.9 By Jack Unrue <jd...@gm...> Index: calls.c =================================================================== RCS file: /cvsroot/clisp/clisp/modules/syscalls/calls.c,v retrieving revision 1.173 retrieving revision 1.174 diff -u -d -r1.173 -r1.174 --- calls.c 23 Jul 2006 16:51:16 -0000 1.173 +++ calls.c 26 Jun 2007 13:23:00 -0000 1.174 @@ -79,6 +79,14 @@ # endif #endif +#if defined(_WIN32) +#include <initguid.h> +DEFINE_GUID(FMTID_SummaryInformation, 0xF29F85E0, 0x4FF9, 0x1068, + 0xAB, 0x91, 0x08, 0x00, 0x2B, 0x27, 0xB3, 0xD9); +DEFINE_GUID(FMTID_UserDefinedProperties, 0xD5CDD505, 0x2E9C, 0x101B, + 0x93, 0x97, 0x08, 0x00, 0x2B, 0x2C, 0xF9, 0xAE); +#endif + #include <stdio.h> /* for BUFSIZ */ #include <stdlib.h> #include <string.h> /* for strcpy(), strcat() */ @@ -3847,7 +3855,7 @@ IPropertyStorage * ppropstg = NULL; IPropertySetStorage * ppropsetstg = NULL; HRESULT hres; - REFFMTID fmtid = NULL; + FMTID* fmtid = NULL; PROPSPEC * pspecrd = NULL; PROPSPEC * pspecwr = NULL; PROPVARIANT * pvarrd = NULL; ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 12 ***************************************** |
|
From: Sam S. <sd...@gn...> - 2007-06-26 14:29:29
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 replacing execute with launch: this is a good first step. note that execute=vfork+execv while launch=vfork+execvp i.e. execute does not search the PATH while launch does. note that execute on windows is already implemented using shell, i.e., IIUC, it will search the PATH (unless an absolute pathname is given). So, do you think this is a reasonable step? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGgSK4Pp1Qsf2qnMcRAmLMAJ9r3TraMdoBdeAHYrzVnNs1VDFyHgCgrmxi XdUGGO7vfijFwtEbPnJ26Ck= =dg4U -----END PGP SIGNATURE----- |
|
From: Jack U. <jd...@gm...> - 2007-06-26 03:21:24
|
On 6/25/07, Sam Steingold <sd...@gn...> wrote:
>
> thanks.
> now, how about a ChangeLog entry?
Index: ChangeLog
===================================================================
RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v
retrieving revision 1.5534
diff -u -r1.5534 ChangeLog
--- ChangeLog 25 Jun 2007 15:02:57 -0000 1.5534
+++ ChangeLog 26 Jun 2007 03:19:22 -0000
@@ -1,3 +1,9 @@
+2007-06-25 Jack Unrue <jd...@gm...>
+
+ * modules/syscalls/calls.c: provide local definitions of
+ FMTID_SummaryInformation and FMTID_UserDefinedProperties: support
+ build using MinGW w32api 3.9
+
2007-06-25 Sam Steingold <sd...@gn...>
* pathname.d (interpret_launch_priority): do not access STACK,
|
|
From: <cli...@li...> - 2007-06-25 19:06:50
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src pathname.d,1.396,1.397 ChangeLog,1.5533,1.5534 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Mon, 25 Jun 2007 15:03:37 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src pathname.d,1.396,1.397 ChangeLog,1.5533,1.5534 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv23647/src Modified Files: pathname.d ChangeLog Log Message: (interpret_launch_priority): do not access STACK, accept an argument instead Index: pathname.d =================================================================== RCS file: /cvsroot/clisp/clisp/src/pathname.d,v retrieving revision 1.396 retrieving revision 1.397 diff -u -d -r1.396 -r1.397 --- pathname.d 22 Feb 2007 20:12:02 -0000 1.396 +++ pathname.d 25 Jun 2007 15:02:40 -0000 1.397 @@ -2,7 +2,7 @@ * Pathnames for CLISP * Bruno Haible 1990-2005 * Logical Pathnames: Marcus Daniels 16.9.1994 - * ANSI compliance, bugs: Sam Steingold 1998-2006 + * ANSI compliance, bugs: Sam Steingold 1998-2007 * German comments translated into English: Stefan Kain 2002-01-03 */ @@ -8509,15 +8509,13 @@ /* paranoidal close */ #define ParaClose(h) if (!CloseHandle(h)) { end_system_call(); OS_error(); } -local maygc sintL interpret_launch_priority (void) { - var sintL pry = NORMAL_PRIORITY_CLASS; - if (!boundp(STACK_0)) return NORMAL_PRIORITY_CLASS; - var object priority_arg = STACK_0; +local maygc sintL interpret_launch_priority (object priority_arg) { + if (!boundp(priority_arg)) return NORMAL_PRIORITY_CLASS; restart_priority: if (eq(priority_arg,S(Khigh))) return HIGH_PRIORITY_CLASS; else if (eq(priority_arg,S(Klow))) return IDLE_PRIORITY_CLASS; else if (eq(priority_arg,S(Knormal))) return NORMAL_PRIORITY_CLASS; - else if (integerp(STACK_0)) return I_to_L(STACK_0); + else if (integerp(priority_arg)) return I_to_L(priority_arg); pushSTACK(NIL); /* no PLACE */ pushSTACK(priority_arg); /* TYPE-ERROR slot DATUM */ pushSTACK(O(type_priority)); /* TYPE-ERROR slot EXPECTED-TYPE */ @@ -8553,7 +8551,7 @@ STACK_9 = check_string(STACK_9); /* command_arg */ if (!boundp(STACK_5)) STACK_5 = NIL; /* arguments_arg */ else STACK_5 = check_list(STACK_5); - var long priority = interpret_launch_priority();/* from STACK_0 */ + var long priority = interpret_launch_priority(STACK_0); var bool wait_p = !nullp(STACK_4); /* default: do wait! */ var Handle hnull = INVALID_HANDLE; var Handle hinput; Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5533 retrieving revision 1.5534 diff -u -d -r1.5533 -r1.5534 --- ChangeLog 22 Jun 2007 18:01:12 -0000 1.5533 +++ ChangeLog 25 Jun 2007 15:02:57 -0000 1.5534 @@ -1,3 +1,8 @@ +2007-06-25 Sam Steingold <sd...@gn...> + + * pathname.d (interpret_launch_priority): do not access STACK, + accept an argument instead + 2007-06-22 Sam Steingold <sd...@gn...> fix last patch ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 11 ***************************************** |
|
From: Sam S. <sd...@gn...> - 2007-06-25 15:00:41
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Shawn, Shawn Betts wrote: > Basically i've made everything call launch with various argument > combinations. cool! did you make sure (as in "proofread" & "test") that there is no functionality loss (i.e., you just removed code duplication)? are they cross-platform? i.e., correct on both unix and woe32? > Also, I've added 2 new arguments: :new-group and > :environment. when :new-group is T it calls chgrp before exec and with > :environment you can specify an alternate environment. OK. > How am I doing? Am I on the right track? suggestions? improvements? 1. please accompany all patches with a clear ChangeLog entry. 2. please make patches small and modular: a separate patch adding arguments to lunch, a separate patch obsoleting execute &c. 3. please work off cvs head (and be prepared to resolve minor conflicts every now and then because I may modify your patches when applying them). 4. PLEASE PLEASE PLEASE do test your patches, especially for GC-safety, see http://clisp.cons.org/impnotes/gc-safety.html. thanks. Sam. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGf9iMPp1Qsf2qnMcRAm6dAJ49fsUrpfyAiJ3QAk7pFFuRwNsdSACfYEE3 vObobkHoXMzpoBUUZC+7OlQ= =x5JU -----END PGP SIGNATURE----- |
|
From: Sam S. <sd...@gn...> - 2007-06-25 14:39:48
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jack Unrue wrote: > On 6/24/07, Sam Steingold <sd...@gn...> wrote: >> sorry, I cannot read this. >> could you please send a unified context diff? >> >> thanks! > > My apologies, revised diff follows. -- Jack thanks. now, how about a ChangeLog entry? Sam. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGf9OmPp1Qsf2qnMcRAiiiAJ9S5hEuLxKPQtDJYk1bGHcBDdV0NgCfV4E+ yezoQTfrXsdXEicfxn06fqQ= =zITZ -----END PGP SIGNATURE----- |
|
From: Shawn B. <sa...@vc...> - 2007-06-25 04:04:05
|
Hi clispers,
Here's my attempt to fulfill the run-program/launch todo
item. Basically i've made everything call launch with various argument
combinations. Also, I've added 2 new arguments: :new-group and
:environment. when :new-group is T it calls chgrp before exec and with
:environment you can specify an alternate environment.
How am I doing? Am I on the right track? suggestions? improvements?
-Shawn
Index: src/constsym.d
===================================================================
RCS file: /cvsroot/clisp/clisp/src/constsym.d,v
retrieving revision 1.331
diff -u -r1.331 constsym.d
--- src/constsym.d 28 Dec 2006 00:29:51 -0000 1.331
+++ src/constsym.d 25 Jun 2007 03:57:51 -0000
@@ -1318,6 +1318,8 @@
LISPSYM(Khigh,"HIGH",keyword)
LISPSYM(Knormal,"NORMAL",keyword)
LISPSYM(Klow,"LOW",keyword)
+LISPSYM(Knew_group,"NEW-GROUP",keyword)
+LISPSYM(Kenvironment,"ENVIRONMENT",keyword)
#endif
#ifdef SOCKET_STREAMS
LISPSYM(Ktimeout,"TIMEOUT",keyword)
Index: src/pathname.d
===================================================================
RCS file: /cvsroot/clisp/clisp/src/pathname.d,v
retrieving revision 1.396
diff -u -r1.396 pathname.d
--- src/pathname.d 22 Feb 2007 20:12:02 -0000 1.396
+++ src/pathname.d 25 Jun 2007 03:58:00 -0000
@@ -8083,85 +8083,12 @@
LISPFUN(execute,seclass_default,1,0,rest,nokey,0,NIL)
{ /* (EXECUTE file arg1 arg2 ...) calls a file with the given arguments. */
- var gcv_object_t* args_pointer = rest_args_pointer STACKop 1;
- {
- var gcv_object_t* argptr = args_pointer; /* Pointer to the arguments */
- { /* check file: */
- var gcv_object_t* file_ = &NEXT(argptr);
- var object namestring = true_namestring(coerce_pathname(*file_),
- true,false);
- /* check, if the file exists: */
- if (!file_exists(namestring)) { fehler_file_not_exists(); }
- *file_ = string_to_asciz(namestring,O(pathname_encoding)); /* save */
- skipSTACK(1);
- }
- { /* check the other arguments: */
- var uintC count;
- dotimesC(count,argcount, {
- var gcv_object_t* arg_ = &NEXT(argptr);
- pushSTACK(*arg_); funcall(L(string),1); /* convert next argument into a string */
- *arg_ = string_to_asciz(value1,O(misc_encoding)); /* and convert ASCIZ-string */
- });
- }
- }
- { /* build up argv-Array in stack and copy strings in the stack: */
- var uintL argvdata_length = 0;
- {
- var gcv_object_t* argptr = args_pointer;
- var uintC count;
- dotimespC(count,argcount+1, {
- var object arg = NEXT(argptr); /* next argument, ASCIZ-string */
- argvdata_length += Sbvector_length(arg);
- });
- }
- var DYNAMIC_ARRAY(argv,char*,1+(uintL)argcount+1);
- var DYNAMIC_ARRAY(argvdata,char,argvdata_length);
- {
- var gcv_object_t* argptr = args_pointer;
- var char** argvptr = &argv[0];
- var char* argvdataptr = &argvdata[0];
- var uintC count;
- dotimespC(count,argcount+1, {
- var object arg = NEXT(argptr); /* next argument, ASCIZ-string */
- var char* ptr = TheAsciz(arg);
- var uintL len = Sbvector_length(arg);
- *argvptr++ = argvdataptr; /* fill into argv */
- dotimespL(len,len, { *argvdataptr++ = *ptr++; } ); /* and copy */
- });
- *argvptr = NULL; /* and conclude with nullpointer */
- }
- { /* start a new process: */
- var int child;
- begin_system_call();
- begin_want_sigcld();
- if ((child = vfork()) ==0) {
- /* this program part is executed by the child-process: */
- close_all_fd();
- execv(argv[0],argv); /* call program */
- _exit(-1); /* if this fails, end the child-process */
- }
- /* this program part is executed by the caller: */
- if (child==-1) {
- /* something failed, either on vfork or on execv.
- in both cases errno was set. */
- end_want_sigcld(); OS_error();
- }
- /* wait, until the child-process is finished: */
- var int status = wait2(child);
- /* cf. WAIT(2V) and #include <sys/wait.h> :
- WIFSTOPPED(status) == ((status & 0xFF) == 0177)
- WEXITSTATUS(status) == ((status & 0xFF00) >> 8) */
- end_want_sigcld();
- end_system_call();
- /* finished. */
- set_args_end_pointer(args_pointer); /* clean up STACK */
- VALUES1(((status & 0xFF) == 0000) /* process ended normally (without signal, without core-dump) ? */
- ? fixnum((status & 0xFF00) >> 8) /* yes -> exit-status as value: */
- : NIL); /* no -> NIL as value */
- }
- FREE_DYNAMIC_ARRAY(argvdata);
- FREE_DYNAMIC_ARRAY(argv);
- }
+ /* Use `launch' to execute the file. */
+ funcall(L(list),argcount);
+ pushSTACK(S(Karguments));
+ pushSTACK(value1);
+ funcall(L(launch),3);
+ VALUES1(value1);
}
#endif
@@ -8264,9 +8191,9 @@
LISPFUN(shell,seclass_default,0,1,norest,nokey,0,NIL) {
var object command = popSTACK();
if (missingp(command)) {
- /* execute (EXECUTE shell) : */
+ /* launch (LAUNCH shell) : */
pushSTACK(O(user_shell)); /* Shell-Name */
- funcall(L(execute),1);
+ funcall(L(launch),1);
} else {
/* call (EXECUTE shell "-c" command): */
pushSTACK(O(command_shell)); /* shell name */
@@ -8486,9 +8413,9 @@
Handle hparent_pipe, int childpid)
{
if (hparent_pipe != INVALID_HANDLE) {
- pushSTACK(STACK_7); /* encoding */
- pushSTACK(STACK_(8+1)); /* element-type */
- pushSTACK(STACK_(6+2)); /* buffered */
+ pushSTACK(STACK_9); /* encoding */
+ pushSTACK(STACK_(10+1)); /* element-type */
+ pushSTACK(STACK_(8+2)); /* buffered */
*ret = (parent_inputp?mkips_from_handles:mkops_from_handles)
(hparent_pipe,childpid); /* replace :PIPE with PIPE-x-STREAM */
/* stack has been cleaned by callee */
@@ -8511,13 +8438,13 @@
local maygc sintL interpret_launch_priority (void) {
var sintL pry = NORMAL_PRIORITY_CLASS;
- if (!boundp(STACK_0)) return NORMAL_PRIORITY_CLASS;
- var object priority_arg = STACK_0;
+ if (!boundp(STACK_2)) return NORMAL_PRIORITY_CLASS;
+ var object priority_arg = STACK_2;
restart_priority:
if (eq(priority_arg,S(Khigh))) return HIGH_PRIORITY_CLASS;
else if (eq(priority_arg,S(Klow))) return IDLE_PRIORITY_CLASS;
else if (eq(priority_arg,S(Knormal))) return NORMAL_PRIORITY_CLASS;
- else if (integerp(STACK_0)) return I_to_L(STACK_0);
+ else if (integerp(STACK_2)) return I_to_L(STACK_2);
pushSTACK(NIL); /* no PLACE */
pushSTACK(priority_arg); /* TYPE-ERROR slot DATUM */
pushSTACK(O(type_priority)); /* TYPE-ERROR slot EXPECTED-TYPE */
@@ -8530,7 +8457,7 @@
}
/* (LAUNCH executable [:arguments] [:wait] [:input] [:output] [:error]
- [:element-type] [:external-format] [:buffered] [:priority])
+ [:element-type] [:external-format] [:buffered] [:priority] [:new-group] [:environment])
Launches a program.
:arguments : a list of strings (*MISC-ENCODING* is used)
:wait - nullp/not nullp - whether to wait for process to finish (default T)
@@ -8543,28 +8470,36 @@
:priority : :HIGH/:LOW/:NORMAL or fixnum
on UNIX - see nice(2)
on Windows - see CreateProcess dwCreationFlags parameter.
+ :new-group, when non-nil the program is launched in it's own group. see chgrp(1)
+ :environment, Override the existing environment with a list of strings, each of the form "VARIABLE=VALUE".
returns: value1: if wait exit code, child PID otherwise
value2: NIL or created pipe-output-stream, input stream for child
value3: NIL or created pipe-input-stream, output stream for child
value4: NIL or created pipe-input-stream, error stream for child */
-LISPFUN(launch,seclass_default,1,0,norest,key,9,
+LISPFUN(launch,seclass_default,1,0,norest,key,11,
(kw(element_type),kw(external_format),kw(buffered),kw(arguments),
- kw(wait),kw(input),kw(output),kw(error),kw(priority))) {
- STACK_9 = check_string(STACK_9); /* command_arg */
- if (!boundp(STACK_5)) STACK_5 = NIL; /* arguments_arg */
- else STACK_5 = check_list(STACK_5);
- var long priority = interpret_launch_priority();/* from STACK_0 */
- var bool wait_p = !nullp(STACK_4); /* default: do wait! */
+ kw(wait),kw(input),kw(output),kw(error),kw(priority),kw(new_group),kw(environment))) {
+ STACK_(11) = check_string(STACK_(11)); /* command_arg */
+ if (!boundp(STACK_7)) STACK_7 = NIL; /* arguments_arg */
+ else STACK_7 = check_list(STACK_7);
+ if (!boundp(STACK_1)) STACK_1 = NIL; /* new_group arg */
+ if (!boundp(STACK_0)) STACK_0 = NIL; /* env arg */
+ else STACK_0 = check_list(STACK_0);
+ var long priority = interpret_launch_priority();/* from STACK_1 */
+ var bool wait_p = !nullp(STACK_6); /* default: do wait! */
+ var bool new_group = !nullp(STACK_1);
+ var bool env_p = !nullp(STACK_0);
var Handle hnull = INVALID_HANDLE;
var Handle hinput;
var Handle hparent_out; /* in case of pipe */
- /* STACK_3 == input_stream_arg */
- if (!init_launch_streamarg(3, true, stdin_handle, &hinput, &hparent_out,
+
+ /* STACK_5 == input_stream_arg */
+ if (!init_launch_streamarg(5, true, stdin_handle, &hinput, &hparent_out,
&hnull,&wait_p))
OS_error();
var Handle houtput, hparent_in;
- /* STACK_2 == output_stream_arg */
- if (!init_launch_streamarg(2, false, stdout_handle, &houtput, &hparent_in,
+ /* STACK_4 == output_stream_arg */
+ if (!init_launch_streamarg(4, false, stdout_handle, &houtput, &hparent_in,
&hnull,&wait_p)) {
begin_system_call();
if (hinput != INVALID_HANDLE && hinput != stdin_handle)
@@ -8575,8 +8510,8 @@
OS_error();
}
var Handle herror, hparent_errin;
- /* STACK_1 == error_stream_arg */
- if (!init_launch_streamarg(1, false, stderr_handle, &herror, &hparent_errin,
+ /* STACK_3 == error_stream_arg */
+ if (!init_launch_streamarg(3, false, stderr_handle, &herror, &hparent_errin,
&hnull,&wait_p)) {
begin_system_call();
if (hinput != INVALID_HANDLE && hinput != stdin_handle)
@@ -8597,8 +8532,8 @@
}
/* convert command and args to one asciiz string list */
pushSTACK(allocate_cons());
- Car(STACK_0) = STACK_(9+1); /* command_arg */
- Cdr(STACK_0) = STACK_(5+1); /* arguments_arg */
+ Car(STACK_0) = STACK_(11+1); /* command_arg */
+ Cdr(STACK_0) = STACK_(7+1); /* arguments_arg */
var uintL arglist_count = 0;
var uintL argbuf_len = 1 +
stringlist_to_asciizlist(STACK_0,&O(misc_encoding),&arglist_count);
@@ -8608,6 +8543,7 @@
/* STACK: ascizcmdlist */
var int child_id = 0;
#ifdef UNIX
+ /* Generate argv list */
var DYNAMIC_ARRAY(argv,char*,1+(uintL)arglist_count+1);
var DYNAMIC_ARRAY(argvdata,char,argbuf_len);
var object curcons = STACK_0;
@@ -8623,6 +8559,27 @@
*argvptr = NULL; /* and conclude with null */
skipSTACK(1);
/* STACK: -- */
+
+ /* Generate environment list. Note this is useless work if
+ :environment is not specified. */
+ var uintL envlist_count = 0;
+ var uintL envbuf_len = 1 +
+ stringlist_to_asciizlist(STACK_0,&O(misc_encoding),&envlist_count);
+ var DYNAMIC_ARRAY(env,char*,(uintL)envlist_count+1);
+ var DYNAMIC_ARRAY(envdata,char,envbuf_len);
+ curcons = STACK_0;
+ var char** envptr = &env[0];
+ var char* envdataptr = &envdata[0];
+ while (consp(curcons)) {
+ var uintL len = Sbvector_length(Car(curcons));
+ var char* ptr = TheAsciz(Car(curcons));
+ *envptr++ = envdataptr; /* fill into env */
+ dotimespL(len,len, { *envdataptr++ = *ptr++; } ); /* and copy */
+ curcons = Cdr(curcons);
+ };
+ *envptr = NULL; /* and conclude with null */
+ skipSTACK(1);
+ /* STACK: -- */
begin_system_call();
begin_want_sigcld();
child_id = vfork();
@@ -8654,7 +8611,23 @@
}
#endif
close_all_fd();
- execvp(*argv,argv);
+
+ if (new_group)
+ {
+ #if defined(hpux)
+ setsid();
+ #elif defined(HAVE_SETPGID)
+ setpgid(0, getpid());
+ #elif defined(HAVE_SETPGRP_POSIX)
+ setpgrp();
+ #else
+ setpgrp(0, getpid());
+ #endif
+ }
+ if (env_p)
+ execve(*argv,argv,env);
+ else
+ execvp(*argv,argv);
fprintf(stderr,"clisp/child: execvp failed: %s\n",strerror(errno));
_exit(-1);
} else if (child_id < 0) {
@@ -8676,6 +8649,8 @@
end_system_call();
FREE_DYNAMIC_ARRAY(argv);
FREE_DYNAMIC_ARRAY(argvdata);
+ FREE_DYNAMIC_ARRAY(env);
+ FREE_DYNAMIC_ARRAY(envdata);
#else /* WIN32_NATIVE */
var DYNAMIC_ARRAY(command_data,char,argbuf_len*2);
/* argbuf_len is multiplied by 2 for quoting sake */
@@ -8735,24 +8710,24 @@
if (houtput!=stdout_handle) ParaClose(houtput);
if (herror!=stderr_handle) ParaClose(herror);
end_system_call();
-#endif
+#endif /* UNIX */
/* make pipe-streams */
/* child's input stream, pipe-output from our side */
- make_launch_pipe (&(STACK_3), false, hparent_out, child_id);
+ make_launch_pipe (&(STACK_5), false, hparent_out, child_id);
/* child's output stream, pipe-input from our side
double analysis of buffered, eltype,encoding
drawback: slow; advantage: simple iface with stream.d */
- make_launch_pipe (&(STACK_2), true, hparent_in, child_id);
+ make_launch_pipe (&(STACK_4), true, hparent_in, child_id);
/* child's error stream, pipe-input from our side */
- make_launch_pipe (&(STACK_1), true, hparent_errin, child_id);
+ make_launch_pipe (&(STACK_3), true, hparent_errin, child_id);
value1 = wait_p ? fixnum(exit_code) : L_to_I(child_id);
- value2 = (hparent_out != INVALID_HANDLE) ? (object)STACK_3 : NIL; /* INPUT */
- value3 = (hparent_in != INVALID_HANDLE) ? (object)STACK_2 : NIL; /* OUTPUT */
- value4 = (hparent_errin != INVALID_HANDLE) ? (object)STACK_1 : NIL; /* ERROR */
+ value2 = (hparent_out != INVALID_HANDLE) ? (object)STACK_5 : NIL; /* INPUT */
+ value3 = (hparent_in != INVALID_HANDLE) ? (object)STACK_4 : NIL; /* OUTPUT */
+ value4 = (hparent_errin != INVALID_HANDLE) ? (object)STACK_3 : NIL; /* ERROR */
mv_count = 4;
- skipSTACK(10);
+ skipSTACK(12);
}
#if defined(MY_LOCAL_PRIORITY_CLASSES)
Index: src/stream.d
===================================================================
RCS file: /cvsroot/clisp/clisp/src/stream.d,v
retrieving revision 1.578
diff -u -r1.578 stream.d
--- src/stream.d 8 Mar 2007 03:08:30 -0000 1.578
+++ src/stream.d 25 Jun 2007 03:58:16 -0000
@@ -12796,35 +12796,60 @@
return add_to_open_streams(stream);
}
+local inline void make_pipe_io_stream_helper (object command, int inputp, int outputp, object element_type, object external_format, object buffered)
+{
+ pushSTACK(asciz_to_string(SHELL,O(pathname_encoding)));
+
+ /* Prepare :arguments */
+ pushSTACK(S(Karguments));
+ pushSTACK(asciz_to_string("-c",O(pathname_encoding)));
+ pushSTACK(command);
+ funcall(L(list), 2);
+ pushSTACK(value1);
+
+ /* Prepare remaining arguments */
+ pushSTACK(S(Kelement_type));
+ pushSTACK(element_type);
+
+ pushSTACK(S(Kexternal_format));
+ pushSTACK(external_format);
+
+ pushSTACK(S(Kbuffered));
+ pushSTACK(buffered);
+
+ if (inputp) {
+ pushSTACK(S(Koutput));
+ pushSTACK(S(Kpipe));
+ }
+ if (outputp) {
+ pushSTACK(S(Kinput));
+ pushSTACK(S(Kpipe));
+ }
+
+ funcall(L(launch), inputp && outputp ? 13:11);
+ if (inputp && outputp)
+ VALUES1(make_twoway_stream (value3, value2));
+ else if (inputp)
+ VALUES1(value3);
+ else if (outputp)
+ VALUES1(value2);
+ else
+ NOTREACHED;
+}
+
# (MAKE-PIPE-INPUT-STREAM command [:element-type] [:external-format] [:buffered])
# calls a shell, that executes command, whereby its Standard-Output
# is directed into our pipe.
LISPFUN(make_pipe_input_stream,seclass_default,1,0,norest,key,3,
- (kw(element_type),kw(external_format),kw(buffered)) ) {
- var decoded_el_t eltype;
- var signean buffered;
- # check command:
- pushSTACK(STACK_3); funcall(L(string),1); # (STRING command)
- STACK_3 = value1;
- # Check and canonicalize the :BUFFERED argument:
- buffered = test_buffered_arg(STACK_0);
- # Check and canonicalize the :ELEMENT-TYPE argument:
- test_eltype_arg(&STACK_2,&eltype);
- STACK_2 = canon_eltype(&eltype);
- if (buffered < 0) { check_unbuffered_eltype(&eltype); }
- # Check and canonicalize the :EXTERNAL-FORMAT argument:
- STACK_1 = test_external_format_arg(STACK_1);
- # Now create the pipe.
- with_string_0(STACK_3,O(misc_encoding),command_asciz, {
- create_input_pipe(command_asciz);
- });
- # allocate Stream:
- var object stream = make_pipe(buffered,DIRECTION_INPUT,&eltype);
- TheStream(stream)->strm_pipe_pid = popSTACK(); # Child-Pid
- skipSTACK(4);
- VALUES1(stream); /* return stream */
-}
+ (kw(element_type),kw(external_format),kw(buffered)) )
+{
+ var object buffered = popSTACK();
+ var object external_format = popSTACK();
+ var object element_type = popSTACK();
+ var object command = popSTACK();
+ make_pipe_io_stream_helper (command, 1, 0, element_type, external_format, buffered);
+}
# Pipe-Output-Stream
# ==================
@@ -13000,29 +13025,14 @@
# calls a shell, that executes command, whereby our Pipe is redirected
# into the standard-input of the command.
LISPFUN(make_pipe_output_stream,seclass_default,1,0,norest,key,3,
- (kw(element_type),kw(external_format),kw(buffered)) ) {
- var decoded_el_t eltype;
- var signean buffered;
- # check command:
- pushSTACK(STACK_3); funcall(L(string),1); # (STRING command)
- STACK_3 = value1;
- # Check and canonicalize the :BUFFERED argument:
- buffered = test_buffered_arg(STACK_0);
- # Check and canonicalize the :ELEMENT-TYPE argument:
- test_eltype_arg(&STACK_2,&eltype);
- STACK_2 = canon_eltype(&eltype);
- if (buffered <= 0) { check_unbuffered_eltype(&eltype); }
- # Check and canonicalize the :EXTERNAL-FORMAT argument:
- STACK_1 = test_external_format_arg(STACK_1);
- # Now create the pipe.
- with_string_0(STACK_3,O(misc_encoding),command_asciz, {
- create_output_pipe(command_asciz);
- });
- # allocate Stream:
- var object stream = make_pipe(buffered,DIRECTION_OUTPUT,&eltype);
- TheStream(stream)->strm_pipe_pid = popSTACK(); # Child-Pid
- skipSTACK(4);
- VALUES1(stream); /* return stream */
+ (kw(element_type),kw(external_format),kw(buffered)) )
+{
+ var object buffered = popSTACK();
+ var object external_format = popSTACK();
+ var object element_type = popSTACK();
+ var object command = popSTACK();
+
+ make_pipe_io_stream_helper (command, 0, 1, element_type, external_format, buffered);
}
/* mkops_from_handles(pipe,process_id)
@@ -13222,47 +13232,14 @@
# is redirected into the standard-input of command and its standard-output
# is redirected into our pipe.
LISPFUN(make_pipe_io_stream,seclass_default,1,0,norest,key,3,
- (kw(element_type),kw(external_format),kw(buffered)) ) {
- var decoded_el_t eltype;
- var signean buffered;
- # check command:
- pushSTACK(STACK_3); funcall(L(string),1); # (STRING command)
- STACK_3 = value1;
- # Check and canonicalize the :BUFFERED argument:
- buffered = test_buffered_arg(STACK_0);
- # Check and canonicalize the :ELEMENT-TYPE argument:
- test_eltype_arg(&STACK_2,&eltype);
- STACK_2 = canon_eltype(&eltype);
- if (buffered <= 0) { check_unbuffered_eltype(&eltype); }
- # Check and canonicalize the :EXTERNAL-FORMAT argument:
- STACK_1 = test_external_format_arg(STACK_1);
- # Now create the pipe.
- with_string_0(STACK_3,O(misc_encoding),command_asciz, {
- create_io_pipe(command_asciz);
- });
- # allocate Input-Stream:
- {
- pushSTACK(STACK_(1+3)); # encoding
- pushSTACK(STACK_(2+3+1)); # eltype
- pushSTACK(STACK_(1+2));
- var object stream = make_pipe(buffered,DIRECTION_INPUT,&eltype);
- TheStream(stream)->strm_pipe_pid = STACK_2; # Child-Pid
- STACK_1 = stream;
- }
- # allocate Output-Stream:
- {
- pushSTACK(STACK_(1+3)); # encoding
- pushSTACK(STACK_(2+3+1)); # eltype
- pushSTACK(STACK_(0+2));
- var object stream = make_pipe(buffered,DIRECTION_OUTPUT,&eltype);
- TheStream(stream)->strm_pipe_pid = STACK_2; # Child-Pid
- STACK_0 = stream;
- }
- # 3 values:
- # (make-two-way-stream input-stream output-stream), input-stream, output-stream.
- STACK_2 = make_twoway_stream(STACK_1,STACK_0);
- funcall(L(values),3);
- skipSTACK(4);
+ (kw(element_type),kw(external_format),kw(buffered)) )
+{
+ var object buffered = popSTACK();
+ var object external_format = popSTACK();
+ var object element_type = popSTACK();
+ var object command = popSTACK();
+
+ make_pipe_io_stream_helper (command, 1, 1, element_type, external_format, buffered);
}
#endif # PIPES2
Index: src/subr.d
===================================================================
RCS file: /cvsroot/clisp/clisp/src/subr.d,v
retrieving revision 1.222
diff -u -r1.222 subr.d
--- src/subr.d 28 Dec 2006 00:29:51 -0000 1.222
+++ src/subr.d 25 Jun 2007 03:58:17 -0000
@@ -845,7 +845,7 @@
LISPFUN(shell,seclass_default,0,1,norest,nokey,0,NIL)
#endif
#if defined(UNIX) || defined(WIN32_NATIVE)
-LISPFUN(launch,seclass_default,1,0,norest,key,9,(kw(element_type),kw(external_format),kw(buffered),kw(arguments),kw(wait),kw(input),kw(output),kw(error),kw(priority)))
+LISPFUN(launch,seclass_default,1,0,norest,key,11,(kw(element_type),kw(external_format),kw(buffered),kw(arguments),kw(wait),kw(input),kw(output),kw(error),kw(priority),kw(new_group),kw(environment)))
#endif
#ifdef WIN32_NATIVE
LISPFUN(shell_execute,seclass_default,0,4,norest,nokey,0,NIL)
Index: src/subrkw.d
===================================================================
RCS file: /cvsroot/clisp/clisp/src/subrkw.d,v
retrieving revision 1.53
diff -u -r1.53 subrkw.d
--- src/subrkw.d 21 Dec 2005 04:36:15 -0000 1.53
+++ src/subrkw.d 25 Jun 2007 03:58:17 -0000
@@ -136,7 +136,7 @@
v(1, (kw(verbose)))
s(ensure_directories_exist)
#if defined(UNIX) || defined(WIN32_NATIVE)
-v(9, (kw(element_type),kw(external_format),kw(buffered),kw(arguments),kw(wait),kw(input),kw(output),kw(error),kw(priority)))
+v(11, (kw(element_type),kw(external_format),kw(buffered),kw(arguments),kw(wait),kw(input),kw(output),kw(error),kw(priority),kw(new_group),kw(environment)))
s(launch)
#endif
v(2, (kw(type),kw(initial_contents)) )
|
|
From: Jack U. <jd...@gm...> - 2007-06-25 02:20:29
|
On 6/24/07, Sam Steingold <sd...@gn...> wrote: > > sorry, I cannot read this. > could you please send a unified context diff? > > thanks! My apologies, revised diff follows. -- Jack Index: calls.c =================================================================== RCS file: /cvsroot/clisp/clisp/modules/syscalls/calls.c,v retrieving revision 1.173 diff -u -r1.173 calls.c --- calls.c 23 Jul 2006 16:51:16 -0000 1.173 +++ calls.c 25 Jun 2007 02:19:21 -0000 @@ -79,6 +79,12 @@ # endif #endif +#if defined(_WIN32) +#include <initguid.h> +DEFINE_GUID(FMTID_SummaryInformation, 0xF29F85E0, 0x4FF9, 0x1068, 0xAB, 0x91, 0x08, 0x00, 0x2B, 0x27, 0xB3, 0xD9); +DEFINE_GUID(FMTID_UserDefinedProperties, 0xD5CDD505, 0x2E9C, 0x101B, 0x93, 0x97, 0x08, 0x00, 0x2B, 0x2C, 0xF9, 0xAE); +#endif + #include <stdio.h> /* for BUFSIZ */ #include <stdlib.h> #include <string.h> /* for strcpy(), strcat() */ @@ -3847,7 +3853,7 @@ IPropertyStorage * ppropstg = NULL; IPropertySetStorage * ppropsetstg = NULL; HRESULT hres; - REFFMTID fmtid = NULL; + FMTID* fmtid = NULL; PROPSPEC * pspecrd = NULL; PROPSPEC * pspecwr = NULL; PROPVARIANT * pvarrd = NULL; |
|
From: Sam S. <sd...@gn...> - 2007-06-25 00:47:08
|
> * Jack Unrue <wq...@tz...> [2007-06-24 13:29:08 -0600]: > > The following patch allows clisp to build with MinGW W32API 3.9, which is > the latest released version of the win32 API headers available from > the MinGW project. Those headers do not currently contain definitions for > the above-mentioned format IDs. The GUID values that I specify in this patch > are obtained from a publicly-available source: > > http://www.codeproject.com/file/SummInfoPropSetFile.asp > > but can be easily verified to be correct by consulting MSDN. > > [start of patch for modules/syscalls/calls.c] > > diff -r1.173 calls.c > 81a82,87 > > #if defined(_WIN32) > > #include <initguid.h> > > DEFINE_GUID(FMTID_SummaryInformation, 0xF29F85E0, 0x4FF9, 0x1068, > 0xAB, 0x91, > 0x08, 0x00, 0x2B, 0x27, 0xB3, 0xD9); > > DEFINE_GUID(FMTID_UserDefinedProperties, 0xD5CDD505, 0x2E9C, 0x101B, > 0x93, 0x9 > 7, 0x08, 0x00, 0x2B, 0x2C, 0xF9, 0xAE); > > #endif > > > 3850c3856 > < REFFMTID fmtid = NULL; > --- > > FMTID* fmtid = NULL; sorry, I cannot read this. could you please send a unified context diff? thanks! -- Sam Steingold (http://sds.podval.org/) on Fedora Core release 6 (Zod) http://thereligionofpeace.com http://iris.org.il http://ffii.org http://memri.org http://dhimmi.com http://honestreporting.com char*a="char*a=%c%s%c;main(){printf(a,34,a,34);}";main(){printf(a,34,a,34);} |
|
From: Jack U. <jd...@gm...> - 2007-06-24 19:29:05
|
The following patch allows clisp to build with MinGW W32API 3.9, which is the latest released version of the win32 API headers available from the MinGW project. Those headers do not currently contain definitions for the above-mentioned format IDs. The GUID values that I specify in this patch are obtained from a publicly-available source: http://www.codeproject.com/file/SummInfoPropSetFile.asp but can be easily verified to be correct by consulting MSDN. [start of patch for modules/syscalls/calls.c] diff -r1.173 calls.c 81a82,87 > #if defined(_WIN32) > #include <initguid.h> > DEFINE_GUID(FMTID_SummaryInformation, 0xF29F85E0, 0x4FF9, 0x1068, 0xAB, 0x91, 0x08, 0x00, 0x2B, 0x27, 0xB3, 0xD9); > DEFINE_GUID(FMTID_UserDefinedProperties, 0xD5CDD505, 0x2E9C, 0x101B, 0x93, 0x9 7, 0x08, 0x00, 0x2B, 0x2C, 0xF9, 0xAE); > #endif > 3850c3856 < REFFMTID fmtid = NULL; --- > FMTID* fmtid = NULL; [end of patch] -- Jack Unrue |
|
From: <cli...@li...> - 2007-06-22 19:10:13
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src init.lisp,1.263,1.264 ChangeLog,1.5531,1.5532 (Sam Steingold) 2. clisp/src init.lisp,1.264,1.265 ChangeLog,1.5532,1.5533 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Thu, 21 Jun 2007 21:05:18 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src init.lisp,1.263,1.264 ChangeLog,1.5531,1.5532 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv8793/src Modified Files: init.lisp ChangeLog Log Message: Keep separate file information for each caller (DEFUN, DEFSTRUCT &c) Index: init.lisp =================================================================== RCS file: /cvsroot/clisp/clisp/src/init.lisp,v retrieving revision 1.263 retrieving revision 1.264 diff -u -d -r1.263 -r1.264 --- init.lisp 7 May 2007 04:18:54 -0000 1.263 +++ init.lisp 21 Jun 2007 21:05:15 -0000 1.264 @@ -599,11 +599,39 @@ (function sys::check-special-operator (lambda (caller symbol) (when (special-operator-p symbol) (error-of-type 'source-program-error - ;; note that caller may be a string "DEFUN/DEFMACRO"! + ;; note that caller may be SYS::DEFUN/DEFMACRO ! + ;; maybe (SETF FDEFINITION) is better? :form (list caller symbol) :detail symbol (TEXT "~A: ~S is a special operator and may not be redefined.") caller symbol))))) +;; sys::file doc is an alist ((caller . file-location) ...) +(sys::%putd 'sys::get-file-doc + (function sys::get-file-doc (lambda (object caller) + (assoc caller (getf (get (get-doc-entity-symbol object) 'sys::doc) + 'sys::file) + ;; caller can be (list* funname qualifiers spec-list) + :test #'equal)))) +(sys::%putd 'sys::set-file-doc + (function sys::set-file-doc (lambda (object caller value) + (let* ((symbol (get-doc-entity-symbol object)) + (doc-plist (get symbol 'sys::doc)) + (file-alist (getf doc-plist 'sys::file)) + (old-pair (assoc caller file-alist :test #'equal))) + (if old-pair + ;; In theory, we should remove the OLD-PAIR from FILE-ALIST + ;; and then maybe remove the SYS::FILE & SYS::DOC properties... + ;; Alas, DELETE does not work at this point yes, so it is not trivial. + ;; Note however that VALUE=NIL & OLD-PAIR/=NIL ==> top-level + ;; ==> performance non-critical + (rplacd old-pair value) + (when value ; VALUE=NIL, OLD-PAIR=NIL => do nothing + (let ((new-doc-plist ; nil if %PUTF worked in-place + (sys::%putf doc-plist 'sys::file + (acons caller value file-alist)))) + (when new-doc-plist + (sys::%put symbol 'sys::doc new-doc-plist))))))))) + (sys::%putd 'sys::check-redefinition (function sys::check-redefinition (lambda (object caller what) (when (and (symbolp object) @@ -617,8 +645,7 @@ (if (and (not (or (eq caller 'define-setf-expander) (eq caller 'defsetf))) (sys::subr-info object)) - "C" (getf (get (get-doc-entity-symbol object) 'sys::doc) - 'sys::file)))) + "C" (cdr (get-file-doc (get-doc-entity-symbol object) caller))))) (when (consp old-file) (setq old-file (car old-file))) (unless (or custom:*suppress-check-redefinition* (equalp old-file cur-file) @@ -639,8 +666,8 @@ (warn (TEXT "~A: redefining ~A ~S in ~A, was defined in ~A") caller what object (or cur-file #1="top-level") (or old-file #1#)))) - (system::%set-documentation - object 'sys::file + (system::set-file-doc + object caller ;; note that when CUR-FILE is "foo.fas", ;; *current-source-line-[12]* point into "foo.lisp"! (and cur-file (list cur-file *current-source-line-1* @@ -654,8 +681,8 @@ (function sys::remove-old-definitions (lambda (symbol &optional (preliminary nil)) ; ABI ;; removes the old function-definitions of a symbol (if preliminary - (sys::check-special-operator "DEFUN/DEFMACRO" symbol) - (sys::check-redefinition symbol "DEFUN/DEFMACRO" + (sys::check-special-operator 'defun/defmacro symbol) + (sys::check-redefinition symbol 'defun/defmacro (sys::fbound-string symbol))) (fmakunbound symbol) ; discard function & macro definition (remprop symbol 'sys::definition) ; discard function lambda expression @@ -665,8 +692,7 @@ (when (get symbol 'sys::inline-expansion) (sys::%put symbol 'sys::inline-expansion t)) (when (get symbol 'sys::traced-definition) ; discard Trace - (warn (TEXT "DEFUN/DEFMACRO: redefining ~S; it was traced!") - symbol) + (warn (TEXT "~A: redefining ~S; it was traced!") 'defun/defmacro symbol) (untrace2 symbol))))) ;; THE-ENVIRONMENT as in SCHEME Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5531 retrieving revision 1.5532 diff -u -d -r1.5531 -r1.5532 --- ChangeLog 20 Jun 2007 15:02:17 -0000 1.5531 +++ ChangeLog 21 Jun 2007 21:05:15 -0000 1.5532 @@ -1,3 +1,9 @@ +2007-06-21 Sam Steingold <sd...@gn...> + + Keep separate file information for each caller (DEFUN, DEFSTRUCT &c) + * init.lisp (sys::get-file-doc, sys::set-file-doc): add + (sys::check-redefinition): use them + 2007-06-20 Sam Steingold <sd...@gn...> * m4/proto.m4 (CL_PROTO_MISSING, CONST_VARIANTS, SIZE_VARIANTS): ------------------------------ Message: 2 Date: Fri, 22 Jun 2007 18:01:26 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src init.lisp,1.264,1.265 ChangeLog,1.5532,1.5533 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv13262/src Modified Files: init.lisp ChangeLog Log Message: fix last patch Index: init.lisp =================================================================== RCS file: /cvsroot/clisp/clisp/src/init.lisp,v retrieving revision 1.264 retrieving revision 1.265 diff -u -d -r1.264 -r1.265 --- init.lisp 21 Jun 2007 21:05:15 -0000 1.264 +++ init.lisp 22 Jun 2007 18:01:07 -0000 1.265 @@ -567,15 +567,24 @@ funname (get-setf-symbol (second funname)))))) -;; return the symbol on whose plist the object's documentation will be kept -(sys::%putd 'get-doc-entity-symbol - (function get-doc-entity-symbol (lambda (object) - ;; object can be a symbol, (setf symbol), or (func-name quals specs) +;; return the SYMBOL on whose plist the object's documentation will be kept +;; and the CALLER that indicates what the doc pertains to. +;; OBJECT can be a symbol, (setf symbol), or (func-name quals specs) +;; CALLER is a symbol +;; the doc entity symbol is a symbol from object +;; and doc entity caller is a symbol or list from caller +;; e.g.: (defun foo ...) ==> (FOO DEFUN/DEFMACRO) -> (FOO DEFUN/DEFMACRO) +;; (defmethod foo ...) ==> ((FOO ...) DEFMETHOD) -> (FOO (DEFMETHOD ...)) +(sys::%putd 'sys::get-doc-entity-symbol + (function sys::get-doc-entity-symbol (lambda (object) (get-funname-symbol (if (function-name-p object) object (first object)))))) +(sys::%putd 'sys::get-doc-entity-caller + (function sys::get-doc-entity-caller (lambda (object caller) + (if (function-name-p object) caller (cons caller (rest object)))))) (sys::%putd 'sys::%set-documentation (function sys::%set-documentation (lambda (object doctype value) ; ABI - (let* ((symbol (get-doc-entity-symbol object)) + (let* ((symbol (sys::get-doc-entity-symbol object)) (rec (get symbol 'sys::doc))) (if value (let ((new-val (sys::%putf rec doctype value))) @@ -608,20 +617,21 @@ ;; sys::file doc is an alist ((caller . file-location) ...) (sys::%putd 'sys::get-file-doc (function sys::get-file-doc (lambda (object caller) - (assoc caller (getf (get (get-doc-entity-symbol object) 'sys::doc) - 'sys::file) + (assoc (sys::get-doc-entity-caller object caller) + (getf (get (sys::get-doc-entity-symbol object) 'sys::doc) 'sys::file) ;; caller can be (list* funname qualifiers spec-list) :test #'equal)))) (sys::%putd 'sys::set-file-doc (function sys::set-file-doc (lambda (object caller value) - (let* ((symbol (get-doc-entity-symbol object)) + (let* ((symbol (sys::get-doc-entity-symbol object)) + (caller (sys::get-doc-entity-caller object caller)) (doc-plist (get symbol 'sys::doc)) (file-alist (getf doc-plist 'sys::file)) (old-pair (assoc caller file-alist :test #'equal))) (if old-pair ;; In theory, we should remove the OLD-PAIR from FILE-ALIST ;; and then maybe remove the SYS::FILE & SYS::DOC properties... - ;; Alas, DELETE does not work at this point yes, so it is not trivial. + ;; Alas, DELETE does not work at this point yet, so it is not trivial. ;; Note however that VALUE=NIL & OLD-PAIR/=NIL ==> top-level ;; ==> performance non-critical (rplacd old-pair value) @@ -645,7 +655,7 @@ (if (and (not (or (eq caller 'define-setf-expander) (eq caller 'defsetf))) (sys::subr-info object)) - "C" (cdr (get-file-doc (get-doc-entity-symbol object) caller))))) + "C" (cdr (sys::get-file-doc object caller))))) (when (consp old-file) (setq old-file (car old-file))) (unless (or custom:*suppress-check-redefinition* (equalp old-file cur-file) @@ -666,7 +676,7 @@ (warn (TEXT "~A: redefining ~A ~S in ~A, was defined in ~A") caller what object (or cur-file #1="top-level") (or old-file #1#)))) - (system::set-file-doc + (sys::set-file-doc object caller ;; note that when CUR-FILE is "foo.fas", ;; *current-source-line-[12]* point into "foo.lisp"! Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5532 retrieving revision 1.5533 diff -u -d -r1.5532 -r1.5533 --- ChangeLog 21 Jun 2007 21:05:15 -0000 1.5532 +++ ChangeLog 22 Jun 2007 18:01:12 -0000 1.5533 @@ -1,3 +1,9 @@ +2007-06-22 Sam Steingold <sd...@gn...> + + fix last patch + * init.lisp (sys::get-doc-entity-caller): add + (get-file-doc, set-file-doc): use it + 2007-06-21 Sam Steingold <sd...@gn...> Keep separate file information for each caller (DEFUN, DEFSTRUCT &c) ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 10 ***************************************** |
|
From: Sam S. <sd...@gn...> - 2007-06-21 21:19:17
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Sam Steingold wrote: > Yaroslav Kavenchuk wrote: >> $ cat /home/src/clisp/clisp/build-full/tests/*.erg >> Form: (WITH-COLLECT (C) (DOLIST (P *SYSTEM-PACKAGE-LIST*) >> (DO-EXTERNAL-SYMBOLS (S P) (UNLESS (OR (NOT (FBOUNDP S)) >> (SYSTEM::SUBR-INFO S) (SP >> ECIAL-OPERATOR-P S) (DOCUMENTATION S 'SYSTEM::FILE) (NOT (EQ S >> (SYSTEM::FUNCTION-NAME (OR (MACRO-FUNCTION S) S))))) (C S))))) >> CORRECT: NIL >> CLISP : (MAKE-LOAD-FORM ARITHMETIC-ERROR-OPERATION ALLOCATE-INSTANCE > > yeah, I know. > the form returns NIL in an interactive session but not in the test suite. I fixed the test failure (finally! - sorry about the long delay). One can now extract the file name for each definition of a symbol: e.g., if you have (defun foo) and (defstruct foo) in separate files, you can find both locations. (same should be true for defmethods with different qualifiers/specializers too). Sam. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGeutJPp1Qsf2qnMcRArseAJ9fAMnXQaYwy88Z3T8Zta59piki8QCgiy9y YbhgAghi49/m8zw6VMxF8z4= =uTko -----END PGP SIGNATURE----- |
|
From: Sam S. <sd...@gn...> - 2007-06-21 15:00:23
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Sam Steingold wrote: > Kamil Shakirov wrote: >> Thanks for the patches, Sam. welcome >> checking for connect declaration... configure: error: please report the >> connect() declaration on your platform to GNU CLISP developers at >> http://clisp.cons.org/ >> See `config.log' for more details. > >> I attached that `config.log'. >> Looks like conftest.c misses out: #include <arpa/inet.h> > > where is socklen_t defined? > in <arpa/inet.h>? more specifically, what is the Right Way of including <sys/socket.h>? what must be included before it? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGepJ3Pp1Qsf2qnMcRAhAOAJwLkKVKokFxq7KuaRWGs5alx2DJZwCfeJc4 rPAX5/pic+kdv7y7BToofQ0= =ailL -----END PGP SIGNATURE----- |
|
From: Sam S. <sd...@gn...> - 2007-06-21 13:29:58
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Kamil Shakirov wrote: > Thanks for the patches, Sam. > > I checked out the latest snapshot from CVS and run .configure again with the > same options I had posted earlier. So ioctl() declaration passed but when it > checks connect() one I got: > > checking for connect declaration... configure: error: please report the > connect() declaration on your platform to GNU CLISP developers at > http://clisp.cons.org/ > See `config.log' for more details. > > I attached that `config.log'. > Looks like conftest.c misses out: #include <arpa/inet.h> where is socklen_t defined? in <arpa/inet.h>? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGen1IPp1Qsf2qnMcRAhV9AJ9HJkGs2LCWLbIb0T3/5+IactCgJACdELD7 s9WJL4S4NcpHughzhNgAHmY= =8IcN -----END PGP SIGNATURE----- |
|
From: Kamil S. <kam...@gm...> - 2007-06-21 04:40:03
|
Thanks for the patches, Sam. I checked out the latest snapshot from CVS and run .configure again with the same options I had posted earlier. So ioctl() declaration passed but when it checks connect() one I got: checking for connect declaration... configure: error: please report the connect() declaration on your platform to GNU CLISP developers at http://clisp.cons.org/ See `config.log' for more details. I attached that `config.log'. Looks like conftest.c misses out: #include <arpa/inet.h> Thanks for help. On Wednesday 20 June 2007 21:42:31 Sam Steingold wrote: > Kamil Shakirov wrote: > > extern int connect (int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t > > __len) __THROW; > > Index: src/configure > =================================================================== > RCS file: /cvsroot/clisp/clisp/src/configure,v > retrieving revision 1.170 > diff -u -w -r1.170 configure > --- src/configure 8 Mar 2007 03:20:22 -0000 1.170 > +++ src/configure 20 Jun 2007 14:41:37 -0000 > @@ -38861,7 +38863,7 @@ > echo $ECHO_N "(cached) $ECHO_C" >&6 > else > > -for x in '' 'const'; do > +for x in '' 'const' '__const'; do > for y in 'struct sockaddr *' 'void*'; do > for z in 'int' 'size_t' 'socklen_t'; do > if test -z "$have_connect_decl"; then |
|
From: <cli...@li...> - 2007-06-20 19:13:10
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src/autoconf aclocal.m4,1.186,1.187 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Wed, 20 Jun 2007 15:11:36 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src/autoconf aclocal.m4,1.186,1.187 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src/autoconf In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21003/src/autoconf Modified Files: aclocal.m4 Log Message: regenerated Index: aclocal.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/autoconf/aclocal.m4,v retrieving revision 1.186 retrieving revision 1.187 diff -u -d -r1.186 -r1.187 --- aclocal.m4 8 Mar 2007 03:20:22 -0000 1.186 +++ aclocal.m4 20 Jun 2007 15:11:33 -0000 1.187 @@ -346,8 +346,7 @@ _PKG_TEXT ])], - [AC_MSG_RESULT([no]) - $4]) + [$4]) elif test $pkg_failed = untried; then ifelse([$4], , [AC_MSG_FAILURE(dnl [The pkg-config script could not be found or is too old. Make sure it @@ -1009,7 +1008,7 @@ ]) dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2004, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -1024,9 +1023,9 @@ [AC_CHECK_FUNCS(connect) if test $ac_cv_func_connect = yes; then CL_PROTO([connect], [ -for x in '' 'const'; do +for x in CONST_VARIANTS; do for y in 'struct sockaddr *' 'void*'; do -for z in 'int' 'size_t' 'socklen_t'; do +for z in SIZE_VARIANTS; do if test -z "$have_connect_decl"; then CL_PROTO_TRY([ #ifdef HAVE_UNISTD_H @@ -1044,10 +1043,7 @@ done done if test -z "$have_connect_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's connect() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(connect) fi ], [extern int connect (int, $cl_cv_proto_connect_arg2a $cl_cv_proto_connect_arg2b, $cl_cv_proto_connect_arg3);]) AC_DEFINE_UNQUOTED(CONNECT_CONST,$cl_cv_proto_connect_arg2a,[does declaration of connect() need const?]) @@ -3624,7 +3620,7 @@ ]) dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2004, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -3689,7 +3685,7 @@ fi dnl Then find out about the correct ioctl declaration: for y in 'caddr_t arg' 'void* arg' '...'; do -for x in 'int' 'unsigned long' 'long'; do +for x in SIZE_VARIANTS; do if test -z "$have_ioctl"; then CL_PROTO_TRY($ioctl_decl[ #ifdef INCLUDE_SYS_IOCTL_H @@ -3710,10 +3706,7 @@ done done if test -z "$have_ioctl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's ioctl() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(ioctl) fi ], [extern int ioctl ($cl_cv_proto_ioctl_args);]) AC_DEFINE_UNQUOTED(IOCTL_REQUEST_T,$cl_cv_proto_ioctl_arg2,[type of `request' in ioctl() declaration]) @@ -12593,14 +12586,15 @@ AC_SUBST($1)dnl ]) -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. +dnl -*- Autoconf -*- +dnl Copyright (C) 1993-2002, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. -dnl From Bruno Haible, Marcus Daniels. +dnl From Bruno Haible, Marcus Daniels, Sam Steingold. AC_PREREQ(2.13) @@ -12643,6 +12637,13 @@ [CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")] ) +dnl CL_PROTO_MISSING(function_name) +AC_DEFUN([CL_PROTO_MISSING], +[AC_MSG_FAILURE([please report the $1() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT])]) + +m4_define([CONST_VARIANTS],['' 'const' '__const']) +m4_define([SIZE_VARIANTS],['unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t']) + dnl -*- Autoconf -*- dnl Copyright (C) 1993-2005 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU @@ -13104,7 +13105,7 @@ ]) dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2004, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -13166,9 +13167,9 @@ #include <sys/select.h>], , AC_DEFINE(HAVE_SYS_SELECT_H,,[have <sys/select.h>?]))dnl CL_PROTO([select], [ -for z in '' 'const'; do +for z in CONST_VARIANTS; do for y in 'fd_set' 'int' 'void' 'struct fd_set'; do -for x in 'int' 'size_t'; do +for x in SIZE_VARIANTS; do if test -z "$have_select"; then CL_PROTO_TRY([ #include <stdlib.h> @@ -13194,10 +13195,7 @@ done done if test -z "$have_select"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's select() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(select) fi ], [extern int select ($cl_cv_proto_select_arg1, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg5 struct timeval *);]) AC_DEFINE_UNQUOTED(SELECT_WIDTH_T,$cl_cv_proto_select_arg1,[type of `width' in select() declaration]) @@ -14208,7 +14206,7 @@ ]) dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2004, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -14246,8 +14244,8 @@ AC_CHECK_HEADERS(netinet/in.h arpa/inet.h)dnl if test $ac_cv_func_inet_addr = yes; then CL_PROTO([inet_addr], [ -for x in '' 'const'; do -for y in 'struct in_addr' 'unsigned long' 'unsigned int'; do +for x in CONST_VARIANTS; do +for y in SIZE_VARIANTS; do if test -z "$have_inet_addr"; then CL_PROTO_TRY([ #ifdef HAVE_UNISTD_H @@ -14270,10 +14268,7 @@ done done if test -z "$have_inet_addr"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's inet_addr() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(inet_addr) fi ], [extern $cl_cv_proto_inet_addr_ret inet_addr ($cl_cv_proto_inet_addr_arg1 char*);]) AC_DEFINE_UNQUOTED(RET_INET_ADDR_TYPE,$cl_cv_proto_inet_addr_ret,[return type of inet_addr()]) @@ -14292,9 +14287,9 @@ ]) if test $ac_cv_func_setsockopt = yes; then CL_PROTO([setsockopt], [ -for z in 'int' 'unsigned int' 'size_t'; do +for z in SIZE_VARIANTS; do for y in 'char*' 'void*'; do -for x in '' 'const'; do +for x in CONST_VARIANTS; do if test -z "$have_setsockopt_decl"; then CL_PROTO_TRY([ #include <sys/types.h> @@ -14309,10 +14304,7 @@ done done if test -z "$have_setsockopt_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's setsockopt() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(setsockopt) fi ], [extern int setsockopt (int, int, int, $cl_cv_proto_setsockopt_const $cl_cv_proto_setsockopt_arg_t, $cl_cv_proto_setsockopt_optlen_t);]) AC_DEFINE_UNQUOTED(SETSOCKOPT_CONST,$cl_cv_proto_setsockopt_const,[declaration of setsockopt() needs const]) ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 9 **************************************** |
|
From: SourceForge.net <no...@so...> - 2007-06-20 16:41:28
|
Bugs item #1607416, was opened at 2006-12-02 08:57 Message generated for change (Comment added) made by sds You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=1607416&group_id=1355 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: clisp Group: build problems Status: Open Resolution: None Priority: 1 Private: No Submitted By: Larry Liimatainen (remlali) Assigned to: Nobody/Anonymous (nobody) Summary: general build on hpux 11.11 parisc Initial Comment: Hi, My ambition is to keep an track of the build procedure on hpux 11.11 parisc, that doesn't work today with clisp. I hope to annotate this bug ticket with all relevant info as soon as possible. As an apertif, lets start with a simple gcc problem: Currently it stops at this: The compile halted when compiling malloc/gmalloc.c. The lines 240 and 360 differ at: http://clisp.cvs.sourceforge.net/clisp/clisp/src/malloc/gmalloc.c?view=markup I made the lines 240 and 360 be equal to: __ptr_t (*__morecore) PP ((ptrdiff_t __size)) = __default_morecore; I dont know what I'm doing but atleast the compile went through. Now instead I got an bus error when the interpreter tried to cold boot. ---------------------------------------------------------------------- >Comment By: Sam Steingold (sds) Date: 2007-06-20 12:41 Message: Logged In: YES user_id=5735 Originator: NO try this: $ cat > z.c <<EOF #include <stdio.h> int global_var = 42; void main (void) { printf("%d\n",global_var); } EOF $ gcc z.c -o z $ ./z does "42" get printed? ---------------------------------------------------------------------- Comment By: Sam Steingold (sds) Date: 2007-06-20 09:54 Message: Logged In: YES user_id=5735 Originator: NO gmalloc prototype has been fixed in the CVS, thank. does the back_trace reinit actually make a difference? ---------------------------------------------------------------------- Comment By: Larry Liimatainen (remlali) Date: 2006-12-22 14:06 Message: Logged In: YES user_id=188676 Originator: YES clisp builds upto ANSI CL, ie no modules yet. apply these workarounds: in src/spvw.d 3269 # The argv_* variables now have their final values. 3270 # Analyze the environment variables determining the locale. 3271 # Deal with LC_CTYPE. + back_trace = NULL; 3272 init_ctype(); It seems back_trace is initialized to NULL when declared but it has no effect. Instead it contains some garbage, bt.bt_next == bt.bt_function for example. also change src/malloc/gmalloc.c: change line 360 to use __malloc_ptrdiff_t. This made the compilation through all but modules, atleast an full ANSI CL clisp can be started and seems to be working and running ok. ---------------------------------------------------------------------- Comment By: Larry Liimatainen (remlali) Date: 2006-12-09 07:05 Message: Logged In: YES user_id=188676 Originator: YES changed gmalloc and runned gdb, see attachment.. will provide more info as needed. ---------------------------------------------------------------------- Comment By: Larry Liimatainen (remlali) Date: 2006-12-09 07:03 Message: Logged In: YES user_id=188676 Originator: YES File Added: clisp-debug.txt ---------------------------------------------------------------------- Comment By: Jörg Höhle (hoehle) Date: 2006-12-07 06:20 Message: Logged In: YES user_id=377168 Originator: NO Looking at gmalloc.c, it looks like you should have done the opposite: change line 360 to use __malloc_ptrdiff_t. But that will probably not help you with sigsegv or sigbus when running lisp.run to build lispimag.mem. For that you need to provide more information and a gdb backtrace. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101355&aid=1607416&group_id=1355 |
|
From: <cli...@li...> - 2007-06-20 15:11:58
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/src/m4 tcpconn.m4, 1.8, 1.9 select.m4, 1.6, 1.7 proto.m4, 1.2, 1.3 ioctl.m4, 1.10, 1.11 connect.m4, 1.4, 1.5 (Sam Steingold) 2. clisp/src/m4 tcpconn.m4, 1.9, 1.10 select.m4, 1.7, 1.8 proto.m4, 1.3, 1.4 ioctl.m4, 1.11, 1.12 connect.m4, 1.5, 1.6 (Sam Steingold) 3. clisp/src ChangeLog,1.5530,1.5531 (Sam Steingold) 4. clisp/src configure,1.170,1.171 (Sam Steingold) 5. clisp/modules/clx/new-clx configure,1.16,1.17 (Sam Steingold) 6. clisp/modules/gtk2 configure,1.2,1.3 (Sam Steingold) 7. clisp/ffcall/m4 proto.m4,1.2,1.3 (Sam Steingold) 8. clisp/modules/rawsock configure,1.28,1.29 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Wed, 20 Jun 2007 14:26:53 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src/m4 tcpconn.m4, 1.8, 1.9 select.m4, 1.6, 1.7 proto.m4, 1.2, 1.3 ioctl.m4, 1.10, 1.11 connect.m4, 1.4, 1.5 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src/m4 In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv4135/src/m4 Modified Files: tcpconn.m4 select.m4 proto.m4 ioctl.m4 connect.m4 Log Message: m4/proto.m4 (CL_PROTO_MISSING): new macro m4/connect.m4, m4/ioctl.m4, m4/select.m4, m4/tcpconn.m4: use it Index: ioctl.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/ioctl.m4,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- ioctl.m4 20 Jun 2007 13:35:16 -0000 1.10 +++ ioctl.m4 20 Jun 2007 14:26:50 -0000 1.11 @@ -85,10 +85,7 @@ done done if test -z "$have_ioctl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's ioctl() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(ioctl) fi ], [extern int ioctl ($cl_cv_proto_ioctl_args);]) AC_DEFINE_UNQUOTED(IOCTL_REQUEST_T,$cl_cv_proto_ioctl_arg2,[type of `request' in ioctl() declaration]) Index: connect.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/connect.m4,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- connect.m4 12 Nov 2004 15:18:35 -0000 1.4 +++ connect.m4 20 Jun 2007 14:26:50 -0000 1.5 @@ -1,5 +1,5 @@ dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2004, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -34,10 +34,7 @@ done done if test -z "$have_connect_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's connect() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(connect) fi ], [extern int connect (int, $cl_cv_proto_connect_arg2a $cl_cv_proto_connect_arg2b, $cl_cv_proto_connect_arg3);]) AC_DEFINE_UNQUOTED(CONNECT_CONST,$cl_cv_proto_connect_arg2a,[does declaration of connect() need const?]) Index: proto.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/proto.m4,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- proto.m4 2 Dec 2002 14:20:33 -0000 1.2 +++ proto.m4 20 Jun 2007 14:26:50 -0000 1.3 @@ -1,11 +1,11 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2002, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. -dnl From Bruno Haible, Marcus Daniels. +dnl From Bruno Haible, Marcus Daniels, Sam Steingold. AC_PREREQ(2.13) @@ -47,3 +47,6 @@ AC_DEFUN([CL_PROTO_CONST], [CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")] ) + +AC_DEFUN([CL_PROTO_MISSING], +[AC_MSG_FAILURE([please report the $1() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT])]) Index: select.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/select.m4,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- select.m4 2 Nov 2004 11:41:43 -0000 1.6 +++ select.m4 20 Jun 2007 14:26:50 -0000 1.7 @@ -1,5 +1,5 @@ dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. +dnl Copyright (C) 1993-2004, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -89,10 +89,7 @@ done done if test -z "$have_select"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's select() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(select) fi ], [extern int select ($cl_cv_proto_select_arg1, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg5 struct timeval *);]) AC_DEFINE_UNQUOTED(SELECT_WIDTH_T,$cl_cv_proto_select_arg1,[type of `width' in select() declaration]) Index: tcpconn.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/tcpconn.m4,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- tcpconn.m4 20 Jun 2007 13:44:01 -0000 1.8 +++ tcpconn.m4 20 Jun 2007 14:26:50 -0000 1.9 @@ -61,10 +61,7 @@ done done if test -z "$have_inet_addr"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's inet_addr() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(inet_addr) fi ], [extern $cl_cv_proto_inet_addr_ret inet_addr ($cl_cv_proto_inet_addr_arg1 char*);]) AC_DEFINE_UNQUOTED(RET_INET_ADDR_TYPE,$cl_cv_proto_inet_addr_ret,[return type of inet_addr()]) @@ -100,10 +97,7 @@ done done if test -z "$have_setsockopt_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's setsockopt() declaration." 1>&2 - exit 1 +CL_PROTO_MISSING(setsockopt) fi ], [extern int setsockopt (int, int, int, $cl_cv_proto_setsockopt_const $cl_cv_proto_setsockopt_arg_t, $cl_cv_proto_setsockopt_optlen_t);]) AC_DEFINE_UNQUOTED(SETSOCKOPT_CONST,$cl_cv_proto_setsockopt_const,[declaration of setsockopt() needs const]) ------------------------------ Message: 2 Date: Wed, 20 Jun 2007 15:02:19 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src/m4 tcpconn.m4, 1.9, 1.10 select.m4, 1.7, 1.8 proto.m4, 1.3, 1.4 ioctl.m4, 1.11, 1.12 connect.m4, 1.5, 1.6 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src/m4 In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17596/src/m4 Modified Files: tcpconn.m4 select.m4 proto.m4 ioctl.m4 connect.m4 Log Message: m4/proto.m4 (CONST_VARIANTS, SIZE_VARIANTS): new macros m4/connect.m4, m4/ioctl.m4, m4/select.m4, m4/tcpconn.m4: use them Index: ioctl.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/ioctl.m4,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- ioctl.m4 20 Jun 2007 14:26:50 -0000 1.11 +++ ioctl.m4 20 Jun 2007 15:02:17 -0000 1.12 @@ -64,7 +64,7 @@ fi dnl Then find out about the correct ioctl declaration: for y in 'caddr_t arg' 'void* arg' '...'; do -for x in 'unsigned int' 'int' 'unsigned long' 'long'; do +for x in SIZE_VARIANTS; do if test -z "$have_ioctl"; then CL_PROTO_TRY($ioctl_decl[ #ifdef INCLUDE_SYS_IOCTL_H Index: connect.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/connect.m4,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- connect.m4 20 Jun 2007 14:26:50 -0000 1.5 +++ connect.m4 20 Jun 2007 15:02:17 -0000 1.6 @@ -14,9 +14,9 @@ [AC_CHECK_FUNCS(connect) if test $ac_cv_func_connect = yes; then CL_PROTO([connect], [ -for x in '' 'const'; do +for x in CONST_VARIANTS; do for y in 'struct sockaddr *' 'void*'; do -for z in 'int' 'size_t' 'socklen_t'; do +for z in SIZE_VARIANTS; do if test -z "$have_connect_decl"; then CL_PROTO_TRY([ #ifdef HAVE_UNISTD_H Index: proto.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/proto.m4,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- proto.m4 20 Jun 2007 14:26:50 -0000 1.3 +++ proto.m4 20 Jun 2007 15:02:17 -0000 1.4 @@ -1,3 +1,4 @@ +dnl -*- Autoconf -*- dnl Copyright (C) 1993-2002, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General @@ -48,5 +49,9 @@ [CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")] ) +dnl CL_PROTO_MISSING(function_name) AC_DEFUN([CL_PROTO_MISSING], [AC_MSG_FAILURE([please report the $1() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT])]) + +m4_define([CONST_VARIANTS],['' 'const' '__const']) +m4_define([SIZE_VARIANTS],['unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t']) Index: select.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/select.m4,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- select.m4 20 Jun 2007 14:26:50 -0000 1.7 +++ select.m4 20 Jun 2007 15:02:17 -0000 1.8 @@ -61,9 +61,9 @@ #include <sys/select.h>], , AC_DEFINE(HAVE_SYS_SELECT_H,,[have <sys/select.h>?]))dnl CL_PROTO([select], [ -for z in '' 'const'; do +for z in CONST_VARIANTS; do for y in 'fd_set' 'int' 'void' 'struct fd_set'; do -for x in 'int' 'size_t'; do +for x in SIZE_VARIANTS; do if test -z "$have_select"; then CL_PROTO_TRY([ #include <stdlib.h> Index: tcpconn.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/tcpconn.m4,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- tcpconn.m4 20 Jun 2007 14:26:50 -0000 1.9 +++ tcpconn.m4 20 Jun 2007 15:02:17 -0000 1.10 @@ -37,8 +37,8 @@ AC_CHECK_HEADERS(netinet/in.h arpa/inet.h)dnl if test $ac_cv_func_inet_addr = yes; then CL_PROTO([inet_addr], [ -for x in '' 'const'; do -for y in 'struct in_addr' 'unsigned long' 'unsigned int'; do +for x in CONST_VARIANTS; do +for y in SIZE_VARIANTS; do if test -z "$have_inet_addr"; then CL_PROTO_TRY([ #ifdef HAVE_UNISTD_H @@ -80,9 +80,9 @@ ]) if test $ac_cv_func_setsockopt = yes; then CL_PROTO([setsockopt], [ -for z in 'int' 'unsigned int' 'size_t' 'socklen_t'; do +for z in SIZE_VARIANTS; do for y in 'char*' 'void*'; do -for x in '' 'const'; do +for x in CONST_VARIANTS; do if test -z "$have_setsockopt_decl"; then CL_PROTO_TRY([ #include <sys/types.h> ------------------------------ Message: 3 Date: Wed, 20 Jun 2007 15:02:20 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src ChangeLog,1.5530,1.5531 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17596/src Modified Files: ChangeLog Log Message: m4/proto.m4 (CONST_VARIANTS, SIZE_VARIANTS): new macros m4/connect.m4, m4/ioctl.m4, m4/select.m4, m4/tcpconn.m4: use them Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5530 retrieving revision 1.5531 diff -u -d -r1.5530 -r1.5531 --- ChangeLog 20 Jun 2007 14:26:51 -0000 1.5530 +++ ChangeLog 20 Jun 2007 15:02:17 -0000 1.5531 @@ -1,7 +1,8 @@ 2007-06-20 Sam Steingold <sd...@gn...> - * m4/proto.m4 (CL_PROTO_MISSING): new macro - * m4/connect.m4, m4/ioctl.m4, m4/select.m4, m4/tcpconn.m4: use it + * m4/proto.m4 (CL_PROTO_MISSING, CONST_VARIANTS, SIZE_VARIANTS): + new macros + * m4/connect.m4, m4/ioctl.m4, m4/select.m4, m4/tcpconn.m4: use them 2007-06-20 Sam Steingold <sd...@gn...> ------------------------------ Message: 4 Date: Wed, 20 Jun 2007 15:11:37 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src configure,1.170,1.171 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21003/src Modified Files: configure Log Message: regenerated Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/src/configure,v retrieving revision 1.170 retrieving revision 1.171 diff -u -d -r1.170 -r1.171 --- configure 8 Mar 2007 03:20:22 -0000 1.170 +++ configure 20 Jun 2007 15:11:34 -0000 1.171 @@ -26959,7 +26959,7 @@ # See if we find them without any special options. # Don't add to $LIBS permanently. ac_save_LIBS=$LIBS - LIBS="-lX11 $LIBS" + LIBS="-lXt $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -37020,7 +37020,7 @@ rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi for y in 'caddr_t arg' 'void* arg' '...'; do -for x in 'int' 'unsigned long' 'long'; do +for x in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do if test -z "$have_ioctl"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -37096,10 +37096,11 @@ done done if test -z "$have_ioctl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's ioctl() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the ioctl() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the ioctl() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_ioctl="extern int ioctl ($cl_cv_proto_ioctl_args);" @@ -37841,9 +37842,9 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else -for z in '' 'const'; do +for z in '' 'const' '__const'; do for y in 'fd_set' 'int' 'void' 'struct fd_set'; do -for x in 'int' 'size_t'; do +for x in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do if test -z "$have_select"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -37923,10 +37924,11 @@ done done if test -z "$have_select"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's select() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the select() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the select() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_select="extern int select ($cl_cv_proto_select_arg1, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg2 *, $cl_cv_proto_select_arg5 struct timeval *);" @@ -38861,9 +38863,9 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else -for x in '' 'const'; do +for x in '' 'const' '__const'; do for y in 'struct sockaddr *' 'void*'; do -for z in 'int' 'size_t' 'socklen_t'; do +for z in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do if test -z "$have_connect_decl"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -38936,10 +38938,11 @@ done done if test -z "$have_connect_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's connect() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the connect() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the connect() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_connect="extern int connect (int, $cl_cv_proto_connect_arg2a $cl_cv_proto_connect_arg2b, $cl_cv_proto_connect_arg3);" @@ -39651,8 +39654,8 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else -for x in '' 'const'; do -for y in 'struct in_addr' 'unsigned long' 'unsigned int'; do +for x in '' 'const' '__const'; do +for y in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do if test -z "$have_inet_addr"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -39730,10 +39733,11 @@ done done if test -z "$have_inet_addr"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's inet_addr() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the inet_addr() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the inet_addr() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_inet_addr="extern $cl_cv_proto_inet_addr_ret inet_addr ($cl_cv_proto_inet_addr_arg1 char*);" @@ -39839,9 +39843,9 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else -for z in 'int' 'unsigned int' 'size_t'; do +for z in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do for y in 'char*' 'void*'; do -for x in '' 'const'; do +for x in '' 'const' '__const'; do if test -z "$have_setsockopt_decl"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -39911,10 +39915,11 @@ done done if test -z "$have_setsockopt_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's setsockopt() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the setsockopt() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the setsockopt() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_setsockopt="extern int setsockopt (int, int, int, $cl_cv_proto_setsockopt_const $cl_cv_proto_setsockopt_arg_t, $cl_cv_proto_setsockopt_optlen_t);" ------------------------------ Message: 5 Date: Wed, 20 Jun 2007 15:11:38 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/modules/clx/new-clx configure,1.16,1.17 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/modules/clx/new-clx In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21003/modules/clx/new-clx Modified Files: configure Log Message: regenerated Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/modules/clx/new-clx/configure,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- configure 5 Mar 2007 00:38:13 -0000 1.16 +++ configure 20 Jun 2007 15:11:36 -0000 1.17 @@ -3138,7 +3138,7 @@ # See if we find them without any special options. # Don't add to $LIBS permanently. ac_save_LIBS=$LIBS - LIBS="-lX11 $LIBS" + LIBS="-lXt $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF ------------------------------ Message: 6 Date: Wed, 20 Jun 2007 15:11:38 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/modules/gtk2 configure,1.2,1.3 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/modules/gtk2 In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21003/modules/gtk2 Modified Files: configure Log Message: regenerated Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/modules/gtk2/configure,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- configure 5 Mar 2007 00:38:13 -0000 1.2 +++ configure 20 Jun 2007 15:11:36 -0000 1.3 @@ -3150,9 +3150,7 @@ # Put the nasty error message in config.log where it belongs echo "$LIBGLADE_PKG_ERRORS" >&5 - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - { { echo "$as_me:$LINENO: error: cannot find LIBGLADE" >&5 + { { echo "$as_me:$LINENO: error: cannot find LIBGLADE" >&5 echo "$as_me: error: cannot find LIBGLADE" >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then ------------------------------ Message: 7 Date: Wed, 20 Jun 2007 15:11:38 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/ffcall/m4 proto.m4,1.2,1.3 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/ffcall/m4 In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21003/ffcall/m4 Modified Files: proto.m4 Log Message: regenerated Index: proto.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/m4/proto.m4,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- proto.m4 2 Dec 2002 15:44:37 -0000 1.2 +++ proto.m4 20 Jun 2007 15:11:36 -0000 1.3 @@ -1,11 +1,12 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. +dnl -*- Autoconf -*- +dnl Copyright (C) 1993-2002, 2007 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. -dnl From Bruno Haible, Marcus Daniels. +dnl From Bruno Haible, Marcus Daniels, Sam Steingold. AC_PREREQ(2.13) @@ -47,3 +48,10 @@ AC_DEFUN([CL_PROTO_CONST], [CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")] ) + +dnl CL_PROTO_MISSING(function_name) +AC_DEFUN([CL_PROTO_MISSING], +[AC_MSG_FAILURE([please report the $1() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT])]) + +m4_define([CONST_VARIANTS],['' 'const' '__const']) +m4_define([SIZE_VARIANTS],['unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t']) ------------------------------ Message: 8 Date: Wed, 20 Jun 2007 15:11:38 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/modules/rawsock configure,1.28,1.29 To: cli...@li... Message-ID: <E1I...@ma...> Update of /cvsroot/clisp/clisp/modules/rawsock In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv21003/modules/rawsock Modified Files: configure Log Message: regenerated Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/modules/rawsock/configure,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- configure 11 Sep 2006 02:42:49 -0000 1.28 +++ configure 20 Jun 2007 15:11:35 -0000 1.29 @@ -3303,8 +3303,8 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else -for x in '' 'const'; do -for y in 'struct in_addr' 'unsigned long' 'unsigned int'; do +for x in '' 'const' '__const'; do +for y in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do if test -z "$have_inet_addr"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -3382,10 +3382,11 @@ done done if test -z "$have_inet_addr"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's inet_addr() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the inet_addr() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the inet_addr() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_inet_addr="extern $cl_cv_proto_inet_addr_ret inet_addr ($cl_cv_proto_inet_addr_arg1 char*);" @@ -3491,9 +3492,9 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else -for z in 'int' 'unsigned int' 'size_t'; do +for z in 'unsigned int' 'int' 'unsigned long' 'long' 'size_t' 'socklen_t'; do for y in 'char*' 'void*'; do -for x in '' 'const'; do +for x in '' 'const' '__const'; do if test -z "$have_setsockopt_decl"; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -3563,10 +3564,11 @@ done done if test -z "$have_setsockopt_decl"; then - echo "*** Missing autoconfiguration support for this platform." 1>&2 - echo "*** Please report this as a bug to the CLISP developers." 1>&2 - echo "*** When doing this, please also show your system's setsockopt() declaration." 1>&2 - exit 1 +{ { echo "$as_me:$LINENO: error: please report the setsockopt() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&5 +echo "$as_me: error: please report the setsockopt() declaration on your platform to $PACKAGE_NAME developers at $PACKAGE_BUGREPORT +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi cl_cv_proto_setsockopt="extern int setsockopt (int, int, int, $cl_cv_proto_setsockopt_const $cl_cv_proto_setsockopt_arg_t, $cl_cv_proto_setsockopt_optlen_t);" ------------------------------ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 14, Issue 8 **************************************** |
|
From: Sam S. <sd...@gn...> - 2007-06-20 14:42:41
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Kamil Shakirov wrote: > > extern int connect (int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len) > __THROW; Index: src/configure =================================================================== RCS file: /cvsroot/clisp/clisp/src/configure,v retrieving revision 1.170 diff -u -w -r1.170 configure - --- src/configure 8 Mar 2007 03:20:22 -0000 1.170 +++ src/configure 20 Jun 2007 14:41:37 -0000 @@ -38861,7 +38863,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else - -for x in '' 'const'; do +for x in '' 'const' '__const'; do for y in 'struct sockaddr *' 'void*'; do for z in 'int' 'size_t' 'socklen_t'; do if test -z "$have_connect_decl"; then -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGeTzXPp1Qsf2qnMcRAgZRAJ0cOPXAcSlXsUr+6y2wlP9zoQapxwCfSXj3 OAqo4rN5rHL52yX7Kv3/Ovw= =2Ypk -----END PGP SIGNATURE----- |