Re: eu3.2 on puppy 3.01 on qemu #2

new topic     » topic index » view thread      » older message » newer message

CChris wrote:
> 
> Matt Lewis wrote:
> > 
> > It doesn't say what happens if EUDIR isn't set.  We need to change some 
> > combination of the behavior (should be assume a default for EUDIR?) or
> > the documentation and the error message.
> > 
> > Matt
> 
> The installer does set EUDIR and EUINC. An issue I reported months ago is
> that it does so repeatedly when successive versions are (re)installed. The
> INNO script may not have the ability to detect whether the new path is
> redundant or not. As a result, EUDIR not being set is to be expected only
> from old versions which do not know about .conf files anyway. Unless the
> behaviour under Linux is different, of course.

I'm not familiar with INNO at all, so I'm not really sure how we'll want to
change it.  Nevertheless, if you look in main.e, you'll find this code:
eudir = getenv("EUDIR")
    if atom(eudir) then
	if ELINUX then
	    -- should check search PATH for euphoria/bin ?
	    eudir = getenv("HOME")
	    if atom(eudir) then
		eudir = "euphoria"  
	    else 
		eudir = eudir & "/euphoria"
	    end if
	else
	    eudir = "\\EUPHORIA"
	end if

    else

...and then in pathopen.e (where env is either "EUINC" or "EUDIR"):
inc_path = getenv(env)
    if compare(inc_path,{})!=1 then -- nothing to do, just fail
	return -1
    end if

So we're treating it inconsistently.  The error message uses the global
variable 'eudir,' set in main.e.

Currently, in linux, you're required to manually set up the environment
variables.  You will still be able to do this, although config files will
override any environment variables (all platforms).  My plan is to have the
.deb package create a system-wide conf file (and I think we would want to
do a similar thing with the INNO installer).

Matt

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu