Hi,

        As Max suggested it, I think we should add support for Java in fink.

        The first thing to do (because many packages require it) is to set 
JAVA_HOME (to /Library/Java/Home) currently it's only set (AFAIK) in the 
proflie.d scripts of ant which is kind of odd ! To solve this there are 
2 possibility that I can think of :
                1) add a line in init.[c]sh
                2) add a java package (with profile.d scripts)

The 2) provide us with more flexiblity if we ever want to customize the 
JVM (see below). But I think for now the 1) is more simple and is good 
enough.

        The second thing is to automatize the support of jarfiles & classes :

Le jeudi 17 janvier 2002, � 10:53 PM, Sylvain Cuaz a �crit :

>
> Le jeudi 6 d�cembre 2001, � 09:57 PM, [EMAIL PROTECTED] a �crit :
>
>> Simply changing the CLASSPATH is not good enough-- the key is to be 
>> able to support Java in Fink for *both* CLASSPATH and Extensions/ 
>> based usage.
>>
> [...]
>> This *wouldn't* be that big of a deal, but Sun has continued to 
>> neglect to provide any kind of decent automatic baseline configuration 
>> crap for the JVM on a per user basis.  I.e. if you could simply 
>> provide a handful of properties to the JVM at launch based on some 
>> file in the user's home account, this stuff would be easy to support 
>> in a fashion similar to the CSH stuff already in Fink.   Alas, that is 
>> not the case.
>>
>> As Red would say, "Dumbasses."
>>
>> As such, for the jvm to be started with a redefined java.ext.dirs will 
>> require that we externally concatenate the system supplied extension 
>> directory path with the fink supplied extension path.
>
>       And how can we do that ? It's not only to 'java' that we need to 
> pass them but to all the java tools (javac & al)
>       
>       Until Sun provide us with some way of configuration, I say we're 
> better off with adding every jar to CLASSPATH and forget about 
> Extensions.

        To that effect I submitted a feature request (with some diffs, if 
you want to try them out... at you own risk ;-) :
http://sourceforge.net/tracker/index.php?func=detail&aid=488007&group_id=17203&;
atid=367203

        But that only add support for jars. To support .class, we could add 
a ClassDir :
                1) whose args would be dirs that would simply added to CLASSPATH
                2) whose arg would be a boolean to specify whether or not to 
add share/java/%n to CLASSPATH (requiring to copy any .class to it)


        A side problem :

> Le vendredi 11 janvier 2002, � 04:05 PM, Max Horn a �crit :
>
> At 9:07 Uhr -0500 11.01.2002, Bill Bumgarner wrote:
>> xerces-j depends on ant... as it should.
>>
>> ant sets JAVA_HOME in profile.d... as it should.
>>
>> The problem is that if you do 'fink install xerces-j' from a totally 
>> clean system, fink will build ant, then try to build xerces-j, but 
>> fail because the JAVA_HOME environment variable hasn't been set. The 
>> shell needs to be reinitialized.
>>
>> Likely, Fink should source init.csh before each build to ensure that 
>> any shell variables from the previous package are installed.
>
> Hm, maybe.
>
> But then we also need to change the init.(c)sh scripts to handle this 
> case correctly. Right now, if you source them twice, you will get all 
> paths twice.

        yes, we need to solve this

>
> Although, I am not really concinved this is the best solution. For one, 
> the user won't be seeing these changes in other Terminal.app windows 
> either (unless he closes then reopens them).

        Yes but that would solve the dependency problem, which is the main 
one and really annoying, I think this will generate a lot of Fink-user 
question.

> Right now I have no concincing idea how else we could handle this, 
> though.

        me neither, but I think this way is not bad, just need some work :-)


        So what do you all think ?


--
Zauc


_______________________________________________
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to