bugGNUstep - Bugs: bug #25356, make ignoring installation domain...

Group
 
 

bug #25356: make ignoring installation domain configuration on windows

Submitter:  Riccardo Mottola <rmottola>
Submitted:  Mon 19 Jan 2009 11:49:37 AM UTC
   
 
Category:  Makefiles Severity:  3 - Normal
Item Group:  None Status:  Fixed
Privacy:  Public Assigned to:  None
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Sun 18 Apr 2010 06:53:58 PM UTC, comment #16: 

Forgot to say that installation-domains.conf now works fine for me on Windows. :-)

Worth having more testing though.

Thanks

Nicola Pero <nico>
Group Member
Sun 18 Apr 2010 06:22:52 PM UTC, comment #15: 

Ok ... I fixed this in gnustep-base trunk.  Hopefully it now works fine and it will be fixed in the new release.

The configure stuff is now quite simpler to understand too.  It's a pity that autoconf is generally so complicated and that using subdirectories and subconfigures increases complexity instead of reducing it. :-(

Can you confirm that the bug is now fixed ?

Thanks

Nicola Pero <nico>
Group Member
Mon 08 Mar 2010 01:07:20 AM UTC, comment #14: 

I managed to reproduce this, and to track it down.

First of all, if you do './configure' directly inside Source/pathconfig, the correct installation domain (SYSTEM) is used.

The problem only occurs if you do './configure' at the top-level.  In that case, the wrong installation domain (LOCAL) is used.  This is down to gnustep-config not being able to locate installation-domain.conf; and this is because installation-domain.conf is expected to be found in the same directly as GNUstep.conf, but GNUstep.conf in this case is wrongly assumed to be in ./GNUstep.conf.

What seems to happen is that the top-level ./configure sources GNUstep.sh before running pathconfig's ./configure.  That causes GNUSTEP_CONFIG_FILE to be set to what should be at runtime (./GNUstep.conf) instead of what it is at compile time (/etc/GNUstep/GNUstep.conf).

Is there an easy way to decide at what stage to run the sub-configure ?

Else, maybe we could remove the separate Source/pathconfig/configure, and put the path config code back to where it was (before GNUstep.sh is sourced), with the additional benefit of speeding up the configuration (sub-configures are slow as they duplicate a whole bunch of tests (host, target, etc) that are already run top-level). :-)

Anyway, I'll look at it in more detail tomorrow.

Thanks

Nicola Pero <nico>
Group Member
Tue 13 Oct 2009 11:21:53 AM UTC, comment #13: 

I now reconfigured with the path option, so I send you that file, I hope it is relevant, if not I need to regenerate it.
You can notice the launch options in any case, since they are logged.

(file #18870)

Riccardo Mottola <rmottola>
Group Member
Mon 12 Oct 2009 08:27:49 AM UTC, comment #12: 

Thanks - that's interesting.

Could you also send the file

 Source/pathconfig/config.log

But it looks like I'll need to get access to a Windows machine to sort this (and the other new Windows building issues) out.  Hmmm.

Thanks

Nicola Pero <nico>
Group Member
Mon 12 Oct 2009 07:39:33 AM UTC, comment #11: 

I attach the requested files, I did a run of "./configure" without any options.



(file #18861, file #18862)

Riccardo Mottola <rmottola>
Group Member
Sat 10 Oct 2009 07:13:15 PM UTC, comment #10: 

Sorry, not at the moment. Since NSLock was changed to require pthreads I am unable to work with GNUstep on Windows. I know that David send a link to the pthread code for Windows, but I haven't figured out, which bits I need and where to put them.
Perhaps Riccardo has solved that and is able to provide the requested files.

Fred Kiefer <FredKiefer>
Group Member
Sat 10 Oct 2009 04:19:08 PM UTC, comment #9: 

Can you provide the output of a plain ./configure of gnustep-base ?

And also the various config log files ? :-)

Thanks

Nicola Pero <nico>
Group Member
Fri 12 Jun 2009 07:29:18 AM UTC, comment #8: 

I did another test.

./configure --with-installation-domain=SYSTEM

but then do only a "make install"

everything works and gets installed into System. Thus I reckon the problem is on the configure side and not make side.

Riccardo Mottola <rmottola>
Group Member
Thu 11 Jun 2009 10:33:35 AM UTC, comment #7: 

I configured bae with just "configure",

I have:
mottola@DEV11 ~/core/base
$ ls /etc/GNUstep
GNUstep.conf  installation-domains.conf

where base should install in system.

As I check I run:

mottola@DEV11 ~/core/base
$ gnustep-config --installation-domain-for=gnustep-base
SYSTEM

but when I make I get:

$ make
This is gnustep-make 2.2.0. Type 'make print-gnustep-make-help' for help.
Source/pathconfig/pathconfig.mak:15: "Error: GNUSTEP_INSTALLATION_DOMAIN does no
t match GNUSTEP_BASE_DOMAIN"
Source/pathconfig/pathconfig.mak:16: " "
Source/pathconfig/pathconfig.mak:17: "You can install gnustep-base in one of the
 four domains: SYSTEM, LOCAL, NETWORK or USER."
Source/pathconfig/pathconfig.mak:18: " "
Source/pathconfig/pathconfig.mak:19: "gnustep-base was configured to be installe
d into: LOCAL"
Source/pathconfig/pathconfig.mak:20: "but it would now being installed into: SYS
TEM"
Source/pathconfig/pathconfig.mak:21: "That's not right: they must match."
Source/pathconfig/pathconfig.mak:22: " "
Source/pathconfig/pathconfig.mak:23: "If you want to install into LOCAL, please
use"
Source/pathconfig/pathconfig.mak:24: " "
Source/pathconfig/pathconfig.mak:25: "   make install GNUSTEP_INSTALLATION_DOMAI
N=LOCAL [plus any other options you need]"
Source/pathconfig/pathconfig.mak:26: " "
Source/pathconfig/pathconfig.mak:27: "Instead, if you want to install into SYSTE
M, please reconfigure"
Source/pathconfig/pathconfig.mak:28: "gnustep-base by doing"
Source/pathconfig/pathconfig.mak:29: " "
Source/pathconfig/pathconfig.mak:30: "   ./configure --with-installation-domain=
SYSTEM [plus any other options you need]"
Source/pathconfig/pathconfig.mak:31: " "
Source/pathconfig/pathconfig.mak:32: "and then recompile and reinstall."
Source/pathconfig/pathconfig.mak:41: * "Please fix the installation domain the
n try again.  If you are stuck, contact -email is unavailable- for help.".  Sto
p.

Riccardo Mottola <rmottola>
Group Member
Thu 05 Feb 2009 07:25:34 PM UTC, comment #6: 

The problem with applications was due to base not getting compiled correctly. And this was caused by pathconfig. For some reason this seems to ignore the settings in the installation domain file instead it guesses the domain as Local and then make ends up reporting a mismatch between the two settings.

Most likely this was due to the fact that I was never able to install base correctly after this was added. I expect this to work correctly on a fresh system.
I could now compile and install base once with the right domain and hope that this resolves the problem.

Fred Kiefer <FredKiefer>
Group Member
Tue 03 Feb 2009 05:51:56 PM UTC, comment #5: 

With latest SVN this works for all sub modules except for base. Base still ends up being installed in /GNUstep/Local.

But applications still won't start up. I need to test some more.

Fred Kiefer <FredKiefer>
Group Member
Tue 03 Feb 2009 04:51:52 PM UTC, comment #4: 

It works fine for me with the current gnustep-make from svn and using gnustep-make configured with --prefix=/c/current/GNUstep

Perhaps an old version of gnustep-make was being used?

Or perhaps the combination of --prefix= and --with-config-file= causes make to not find the installation-domains.conf?

Richard Frith-Macdonald <CaS>
Group Member
Mon 19 Jan 2009 09:17:03 PM UTC, comment #3: 

well, under Unix it uses --prefix=/usr/local yet it still works

Riccardo Mottola <rmottola>
Group Member
Mon 19 Jan 2009 03:24:20 PM UTC, comment #2: 

I get the same behaviour with todays SVN code. The only thing that looks strange in the ./configure output is that all  sub-invocations have the parameter "--prefix=/GNUstep/Local".

Fred Kiefer <FredKiefer>
Group Member
Mon 19 Jan 2009 02:13:07 PM UTC, comment #1: 

Can you provide a bit more info ... which version of
gnustep-make and gnustep-base you are using, and what the
messages are when you run ./configure in gnustep-make
and gnustep-base ?

Thanks

Nicola Pero <nico>
Group Member
Mon 19 Jan 2009 11:49:37 AM UTC, original submission:  

I configured make this way:
$ ./configure --prefix=/g/GNUstep --with-config-file=/g/GNUstep/GNUstep/GNUstep
.conf

and :
$ ls /g/GNustep/GNUstep/*.conf
/g/GNustep/GNUstep/GNUstep.conf  /g/GNustep/GNUstep/installation-domains.conf

yet when configuring and installing base it ends up in local

Riccardo Mottola <rmottola>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #18870:  config.log added by rmottola (13KiB - application/octet-stream)
file #18861:  config-output.txt added by rmottola (20KiB - text/plain)
file #18862:  config.log added by rmottola (377KiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by CaS (Posted a comment)
  • -email is unavailable- added by FredKiefer (Posted a comment)
  • -email is unavailable- added by nico (Posted a comment)
  • -email is unavailable- added by rmottola (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 7 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2010-06-15 rmottola Open/ClosedOpen Closed
    2010-04-18 nico StatusNone Fixed
    2009-10-13 rmottola Attached File- Added config.log, #18870
    2009-10-12 rmottola Attached File- Added config.log, #18862
        Attached File- Added config-output.txt, #18861
    2009-06-11 rmottola CategoryNone Makefiles
    2009-01-19 rmottola Summarymake ignoring instalaltion domain configuration on windows make ignoring installation domain configuration on windows

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code