Missing device specifier in the groveler on windows

Bug #985103 reported by Karl Heinrichmeyer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
CFFI
New
Undecided
Unassigned

Bug Description

The groveler fails to start the c-compiler with the right include pathes on windows. This is due too the usage of (directory-namestring) to get the directory component of the path. This does not include the device on windows.

The fix uses the function namestring-prefix in the attached lib to extract the directory together with the device specifier. This fixes the problem, at least with ccl-1.8 on windows 7-64-bit.

Revision history for this message
Karl Heinrichmeyer (h11r) wrote :
Revision history for this message
Greg Pfeil (greg-technomadic) wrote :

I think your patch can be reduced to `(make-pathname :name nil :type nil :defaults lib-file)`, plus something similar for the other case.

Revision history for this message
Karl Heinrichmeyer (h11r) wrote :

I thought the pathname-prefix function is more clear in its intention and more convenient, too. And it would be reusable. But if you don't like it than take your solution as long as the bug gets fixed.

Revision history for this message
Luís Oliveira (luismbo) wrote : Re: [cffi-devel] problem with include-path in cffi-grovel on windows

Hello Karl,

On Wed, Apr 18, 2012 at 7:04 PM, Karl Heinrichmeyer
<email address hidden> wrote:
> I reported a bug and attached a patch to it. The patch is using a small lib
> i wrote to solve; I couldn't find an easy way to do it with ANSI CL (this
> may be my fault). The patch seem to solve the problem (windows7-64 and
> ccl-1.8), but I couldn't test it to a great extend. This is because I found
> the but by trying to use osicat which now seems to be broken with the latest
> git version. Is there any package that uses the groveler and should work on
> windows so that I can test the fix?

Thanks for the bug report. I agree with Greg that simply using plain
make-pathname thus not adding an extra dependency would be better. Can
you rewrite the patch taking that into consideration?

Re: osicat being broken, could you report that to the osicat mailing list?

Re: testing cffi-grovel on window, Osicat is probably your best bet.
If that fails, writing a simple test and adding to cffi-tests would be
nice.

Finally, your library does seem useful. Perhaps it could be integrated
into CL-FAD and/or Osicat?

Cheers,

--
Luís Oliveira
http://r42.eu/~luis/

Revision history for this message
Karl Heinrichmeyer (h11r) wrote :

This is the patch as Greg suggested.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.