From attila.lendvai at gmail.com Thu Nov 4 15:51:45 2010 From: attila.lendvai at gmail.com (Attila Lendvai) Date: Thu, 4 Nov 2010 16:51:45 +0100 Subject: [xcvb-devel] make test fails Message-ID: hello list, afaics, make test fails on head like this: +validate_hello_build:4> make hello-using-asdf 'INSTALL_BIN=/home/alendvai/workspace/xcvb.delme/build/bin' 'INSTALL_IMAGE=/home/alendvai/workspace/xcvb.delme/build/common-lisp/images' 'INSTALL_LISP=/home/alendvai/workspace/xcvb.delme/build/common-lisp' 'INSTALL_SOURCE=/home/alendvai/workspace/xcvb.delme/build/common-lisp/source' 'INSTALL_SYSTEMS=/home/alendvai/workspace/xcvb.delme/build/common-lisp/systems' 'CL_SOURCE_REGISTRY=/home/alendvai/workspace/xcvb.delme/build//:/home/alendvai/workspace/xcvb.delme:' 'XCVB_OBJECT_DIRECTORY=/home/alendvai/workspace/xcvb.delme/build/obj' 'LISP=sbcl' 'PARALLELIZE=-l3' export CL_SOURCE_REGISTRY=/home/alendvai/workspace/xcvb.delme/build//:/home/alendvai/workspace/xcvb.delme: make[1]: Entering directory `/home/alendvai/workspace/xcvb.delme/hello' xcvb x2a --build /xcvb/hello --build /xcvb/hello/lib --name xcvb-hello BORK: Could not find a build with requested fullname /xcvb/hello. Try xcvb show-source-registry 0: (SB-DEBUG::MAP-BACKTRACE #)[:EXTERNAL] 1: (SB-DEBUG:BACKTRACE 1152921504606846975 #) 2: (BORK #) 3: (SIGNAL #)[:EXTERNAL] 4: (ERROR "Could not find a build with requested fullname ~A. Try xcvb show-source-registry")[:EXTERNAL] i can "fix" it to print: hello not working make: *** [test] Error 42 by changing the CL_SOURCE_REGISTRY in compute_xcvb_dir_variables to this (IOW, adding ${XCVB_DIR}// to it): CL_SOURCE_REGISTRY="${XCVB_DIR}//:${BUILD_DIR}//:${PWD}:${CL_SOURCE_REGISTRY}" and a potentially related question: the below comment says "don't do it" (unset some variables like CL_SOURCE_REGISTRY) #### And now, let's do whatever the user asks us to! #### #reset_variables # don't do it. Fare, could it be that "make test" works for you because your CL_SOURCE_REGISTRY contains xcvb/hello and the variables are not reset? enabling the reset of the variables does not make any difference for me (probably because these variables are not set in my env). thoughts? -- ?attila From fahree at gmail.com Thu Nov 4 23:25:10 2010 From: fahree at gmail.com (=?ISO-8859-1?Q?Far=E9?=) Date: Thu, 4 Nov 2010 19:25:10 -0400 Subject: [xcvb-devel] make test fails In-Reply-To: References: Message-ID: On 4 November 2010 11:51, Attila Lendvai wrote: > afaics, make test fails on head like this: > > +validate_hello_build:4> make hello-using-asdf > 'INSTALL_BIN=/home/alendvai/workspace/xcvb.delme/build/bin' > 'INSTALL_IMAGE=/home/alendvai/workspace/xcvb.delme/build/common-lisp/images' > 'INSTALL_LISP=/home/alendvai/workspace/xcvb.delme/build/common-lisp' > 'INSTALL_SOURCE=/home/alendvai/workspace/xcvb.delme/build/common-lisp/source' > 'INSTALL_SYSTEMS=/home/alendvai/workspace/xcvb.delme/build/common-lisp/systems' > 'CL_SOURCE_REGISTRY=/home/alendvai/workspace/xcvb.delme/build//:/home/alendvai/workspace/xcvb.delme:' > 'XCVB_OBJECT_DIRECTORY=/home/alendvai/workspace/xcvb.delme/build/obj' > 'LISP=sbcl' 'PARALLELIZE=-l3' > export CL_SOURCE_REGISTRY=/home/alendvai/workspace/xcvb.delme/build//:/home/alendvai/workspace/xcvb.delme: > make[1]: Entering directory `/home/alendvai/workspace/xcvb.delme/hello' > xcvb x2a --build /xcvb/hello --build /xcvb/hello/lib --name xcvb-hello > BORK: > Could not find a build with requested fullname /xcvb/hello. Try xcvb > show-source-registry > Can you (1) trace what the environment variable CL_SOURCE_REGISTRY is just before XCVB is called (or alternatively, print it at the beginning of XCVB), (2) using the same value of the variable and/or of any command-line override, indeed invoke xcvb show-source-registry and see what it says? Odds are you have a copy of hello/build.xcvb somewhere in the same tree, and it's causing a conflict. Or maybe some other kind of misconfiguration. In any case, I pushed asdf 2.010.2, cl-launch 3.005 and xcvb .537 which together work for me. It may be that the test script is buggy, and fails to configure the source registry, but it still works for me because my registry is well-configured. Will have to investigate... > i can "fix" it to print: > > hello not working > make: *** [test] Error 42 > > > by changing the CL_SOURCE_REGISTRY in compute_xcvb_dir_variables to > this (IOW, adding ${XCVB_DIR}// to it): > > > CL_SOURCE_REGISTRY="${XCVB_DIR}//:${BUILD_DIR}//:${PWD}:${CL_SOURCE_REGISTRY}" > I haven't looked at the script in ages, so I don't know what the configuration should be. Do you have a full log in debug mode? > and a potentially related question: the below comment says "don't do > it" (unset some variables like CL_SOURCE_REGISTRY) > > #### And now, let's do whatever the user asks us to! #### > #reset_variables # don't do it. > > Fare, could it be that "make test" works for you because your > CL_SOURCE_REGISTRY contains xcvb/hello and the variables are not > reset? > > enabling the reset of the variables does not make any difference for > me (probably because these variables are not set in my env). > > thoughts? > I will have to wrap my head around it tomorrow. I wrote that quite some time ago already. Time flies. [ Fran?ois-Ren? ?VB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] Those who are afraid to take the next step will have wasted their entire previous journey. ? Baron von Richthofen From fahree at gmail.com Thu Nov 4 23:39:55 2010 From: fahree at gmail.com (=?ISO-8859-1?Q?Far=E9?=) Date: Thu, 4 Nov 2010 19:39:55 -0400 Subject: [xcvb-devel] make test fails In-Reply-To: References: Message-ID: Dear Attila, in case the problem persists, and to let me diagnose the issue remotely, can you also communicate 1- your source-registry configuration in ~/.config/common-lisp/ and /etc/common-lisp/ 2- the output of find / -name build.xcvb (or relevant subset) 3- your configure.mk 4- relevant bits of your environment - env | grep CL_SOURCE_REGISTRY 5- how you initially invoke the test suite 6- full output "Works For Me" - but doesn't mean much. [ Fran?ois-Ren? ?VB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] "How many libertarians does it take to change a lightbulb?" A- "None, the market will take care of it." B- "Every one of them and non-libs too, because we all *are* the market." C- "*I*'ll do it, for a dollar." On 4 November 2010 19:25, Far? wrote: > On 4 November 2010 11:51, Attila Lendvai wrote: >> afaics, make test fails on head like this: >> >> +validate_hello_build:4> make hello-using-asdf >> 'INSTALL_BIN=/home/alendvai/workspace/xcvb.delme/build/bin' >> 'INSTALL_IMAGE=/home/alendvai/workspace/xcvb.delme/build/common-lisp/images' >> 'INSTALL_LISP=/home/alendvai/workspace/xcvb.delme/build/common-lisp' >> 'INSTALL_SOURCE=/home/alendvai/workspace/xcvb.delme/build/common-lisp/source' >> 'INSTALL_SYSTEMS=/home/alendvai/workspace/xcvb.delme/build/common-lisp/systems' >> 'CL_SOURCE_REGISTRY=/home/alendvai/workspace/xcvb.delme/build//:/home/alendvai/workspace/xcvb.delme:' >> 'XCVB_OBJECT_DIRECTORY=/home/alendvai/workspace/xcvb.delme/build/obj' >> 'LISP=sbcl' 'PARALLELIZE=-l3' >> export CL_SOURCE_REGISTRY=/home/alendvai/workspace/xcvb.delme/build//:/home/alendvai/workspace/xcvb.delme: >> make[1]: Entering directory `/home/alendvai/workspace/xcvb.delme/hello' >> xcvb x2a --build /xcvb/hello --build /xcvb/hello/lib --name xcvb-hello >> BORK: >> Could not find a build with requested fullname /xcvb/hello. Try xcvb >> show-source-registry >> > Can you (1) trace what the environment variable CL_SOURCE_REGISTRY is > just before XCVB is called (or alternatively, print it at the > beginning of XCVB), > (2) using the same value of the variable and/or of any command-line > override, indeed invoke xcvb show-source-registry and see what it > says? > > Odds are you have a copy of hello/build.xcvb somewhere in the same > tree, and it's causing a conflict. Or maybe some other kind of > misconfiguration. > > In any case, I pushed asdf 2.010.2, cl-launch 3.005 and xcvb .537 > which together work for me. > > It may be that the test script is buggy, and fails to configure the > source registry, but it still works for me because my registry is > well-configured. Will have to investigate... > >> i can "fix" it to print: >> >> hello not working >> make: *** [test] Error 42 >> >> >> by changing the CL_SOURCE_REGISTRY in compute_xcvb_dir_variables to >> this (IOW, adding ${XCVB_DIR}// to it): >> >> >> CL_SOURCE_REGISTRY="${XCVB_DIR}//:${BUILD_DIR}//:${PWD}:${CL_SOURCE_REGISTRY}" >> > I haven't looked at the script in ages, so I don't know what the > configuration should be. Do you have a full log in debug mode? > > >> and a potentially related question: the below comment says "don't do >> it" (unset some variables like CL_SOURCE_REGISTRY) >> >> #### And now, let's do whatever the user asks us to! #### >> #reset_variables # don't do it. >> >> Fare, could it be that "make test" works for you because your >> CL_SOURCE_REGISTRY contains xcvb/hello and the variables are not >> reset? >> >> enabling the reset of the variables does not make any difference for >> me (probably because these variables are not set in my env). >> >> thoughts? >> > I will have to wrap my head around it tomorrow. > I wrote that quite some time ago already. > Time flies. > > [ Fran?ois-Ren? ?VB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] > Those who are afraid to take the next step will have wasted their entire > previous journey. ? Baron von Richthofen > From attila.lendvai at gmail.com Fri Nov 5 08:40:58 2010 From: attila.lendvai at gmail.com (Attila Lendvai) Date: Fri, 5 Nov 2010 09:40:58 +0100 Subject: [xcvb-devel] make test fails In-Reply-To: References: Message-ID: hi Fare, > in case the problem persists, and to let me diagnose the issue > remotely, can you also communicate > 1- your source-registry configuration in ~/.config/common-lisp/ and > /etc/common-lisp/ all those are empty, except a single pkg-installed 03-clbuild.conf with (:directory #p"/usr/share/common-lisp/clbuild/systems/") but i don't even have that directory, nor do i use clbuild. on the other hand, i do have a .sbclrc which loads a non-trivial file that, besides other things, walks my workspace and extends the source registry with the stuff in workspace/ and workspace/global/ (a symlink to /usr/share/common-lisp/source/). the file in question is: http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.environment;a=headblob;f=/source/environment.lisp maybe a --no-userinit is missing from sbcl? although that file would print stuff that i don't see in the output... so, probably not. > 2- the output of find / -name build.xcvb (or relevant subset) alendvai at ed101:~/workspace$ find . -name build.xcvb ./rfc2388-binary/build.xcvb ./rfc2388-binary/_darcs/current/build.xcvb ./xcvb/build.xcvb ./xcvb/test/conflict/b/build.xcvb ./xcvb/test/conflict/b/invalid/build.xcvb ./xcvb/test/conflict/b2/build.xcvb ./xcvb/test/a2x/build.xcvb ./xcvb/hello/build.xcvb ./xcvb/hello/lib/build.xcvb ./xcvb/build/a2x_a2x/build.xcvb alendvai at ed101:~/workspace/global$ find . -name build.xcvb ./cl+ssl-dev/build.xcvb ./poiu-dev/build.xcvb ./fare-utils-dev/build.xcvb ./asdf-dev/build.xcvb ./meta-dev/build.xcvb ./exscribe/build.xcvb ./fare-matcher-dev/build.xcvb ./trivial-gray-streams-dev/build.xcvb ./asdf-dependency-grovel-dev/build.xcvb ./command-line-arguments-dev/build.xcvb > 3- your configure.mk attached. > 4- relevant bits of your environment - env | grep CL_SOURCE_REGISTRY it's not defined, and i don't set env variables anywhere, not even an SBCL_HOME (they are just a PITA when it comes having a uniform environment on all programmer machines). > 5- how you initially invoke the test suite alendvai at ed101:~/workspace/xcvb$ make test 2&>/tmp/xcvb-make-test-output.txt > 6- full output attached using xcvb version: ".537: fix XCVB and its test Makefile's to work well..." as of this writing, cl-launch, asdf and xcvb are pulled to their head. hope this helps, -- ?attila -------------- next part -------------- A non-text attachment was scrubbed... Name: configure.mk Type: application/octet-stream Size: 5500 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: xcvb-make-test-output.txt.gz Type: application/x-gzip Size: 7346 bytes Desc: not available URL: From fahree at gmail.com Sat Nov 6 13:46:53 2010 From: fahree at gmail.com (=?ISO-8859-1?Q?Far=E9?=) Date: Sat, 6 Nov 2010 09:46:53 -0400 Subject: [xcvb-devel] make test fails In-Reply-To: References: Message-ID: > on the other hand, i do have a .sbclrc which loads a non-trivial file > that, besides other things, walks my workspace and extends the source > registry with the stuff in workspace/ and workspace/global/ (a symlink > to /usr/share/common-lisp/source/). > > the file in question is: > http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.environment;a=headblob;f=/source/environment.lisp > > maybe a --no-userinit is missing from sbcl? although that file would > print stuff that i don't see in the output... so, probably not. Oh, I think I understand the confusion here: * while XCVB shares with ASDF the CL_SOURCE_REGISTRY variable and the ~/.config/common-lisp/source-registry.conf configuration file, etc., and even reuses the ASDF code for parsing configuration files, it doesn't actually get its data from asdf's *source-registry*. Indeed, ASDF is tailored to look for .asd files and stores an ordered list of directories holding .asd files, whereas XCVB looks for build.xcvb files, and stores an actual hash-table of such files, indexed by name, eliminating similarly named builds in the same configured tree as conflicts. * XCVB also doesn't look for things ASDF's legacy configuration variable *central-registry* * Therefore, any ASDF-specific environment setting you do in your environment.lisp file is lost to XCVB. * There is currently no way to tell XCVB to load some file into XCVB itself before to run its normal functions, but a new command might be added that does this: load its first argument, execute the rest of the arguments as a command (if any argument left). Left as an exercise to the reader, though. * Considering what your file does, can't you just export CL_SOURCE_REGISTRY="$(readlink -f $PWD/../..)//:" in your configure.mk ? Sorry for the slow reply. [ Fran?ois-Ren? ?VB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] Does artillery violate the natural rights of the target? I would say: the entire *purpose* of artillery is to violate the natural rights of the target. From attila.lendvai at gmail.com Sat Nov 6 18:21:36 2010 From: attila.lendvai at gmail.com (Attila Lendvai) Date: Sat, 6 Nov 2010 19:21:36 +0100 Subject: [xcvb-devel] make test fails In-Reply-To: References: Message-ID: > * Considering what your file does, can't you just > ? ? ? ?export CL_SOURCE_REGISTRY="$(readlink -f $PWD/../..)//:" > ?in your configure.mk ? so, to sum it all up: the problem was that i assumed that the 'make test' command is self contained in the sense that it doesn't depend on system configuration, but it does for now. adding the line above as suggested patched the issue. -- ?attila