On Wed, 2006-08-30 at 12:21 -0400, Peter Tanski wrote:

BTW: pls post to the list.

> On Aug 30, 2006, at 1:55 AM, skaller wrote:
> 
> > On Tue, 2006-08-29 at 21:45 -0400, Peter Tanski wrote:
> >
> >> It might be a good idea to make it into a package-locator service,
> >> including both headers and libraries.
> >
> > Yeah but how? On Debian you basically don't need this:
> > things go in standard places.
> 
> I was thinking of something along the lines of a simple config, not  
> as complex as texconfig, but similar in use.  Just something to store  
> the locations of everything

How do you define 'everything' for a system that supports wrappers
for arbitrary C libraries?

> --including standard system directories,  
> which may be all you need. 

System directories don't require -I or -L flags on compile/link
steps :)

>  The flx script may simply query the flx- 
> config file to obtain the locations of everything.  

The flx script *already* queries a database resembling
(but of course infinitely superior to) a pkg-config
database. It uses a program 'flx_pkgconfig' and the files
are config/*.fpc .. have a look in the config directory.

Once a 'module' is configured, flx automatically supplies
all the -I, -L and -l switches required so the generated C++
code compiles and links.

Felix is designed to work like Python: you just say

        flx filename

and it executes the code 'as if it were script'.
In fact, it is billed as a statically typed ultra high
performance scripting language -- the code generation
and compilation are all 'behind the scenes' :)

The problem is how to create the *.fpc files:

Here is config/mpi.fpc:

cflags: -I/usr/lib/mpich/include
provides_dlib: -lmpi
provides_slib: -lmpi

The cflags are correct .. the libraries aren't yet,
a -L switch is required. Problem is, the libraries
aren't called

        libmpi.so

they're actually called:

        /usr/lib/mpich/lib/libpmpich.a
        /usr/lib/mpich/lib/shared/libmpich.so

This is because the libraries reflect the MPI implementation model.
There are more of them .. but who would ever guess these locations?


> In any case it might also solve the problem of erasing new header  
> locations every time you build: this way you could pull the locations  
> from a config file that is separate from the build directory, if it  
> exists or the user has chosen to keep it, and go from there.

Yes, we need to have some 'persistent' config stuff.
The question is, exactly how?

The config script already supports saving and loading,
but this only applies to the core config, not extension
modules like mpi.

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Felix-language mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to