[Expat-bugs] [ expat-Bugs-1613457 ] Makefile.in problem on NETBSD 3.1

SourceForge.net noreply at sourceforge.net
Sat Jan 17 19:30:33 CET 2009


Bugs item #1613457, was opened at 2006-12-11 14:50
Message generated for change (Comment added) made by kwaclaw
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=110127&aid=1613457&group_id=10127

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Build control
Group: Platform Specific
>Status: Closed
Resolution: Fixed
Priority: 5
Private: No
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Greg Stein (gstein)
Summary: Makefile.in problem on NETBSD 3.1

Initial Comment:
After running the configure script, then trying to run make, it errors out:

squallbsr at karasu2 [~/source/expat-2.0.0]$ make
make: "/Users/squallbsr/source/expat-2.0.0/Makefile" line 47: Need an operator
make: "/Users/squallbsr/source/expat-2.0.0/Makefile" line 49: Need an operator
make: Fatal errors encountered -- cannot continue

This can be fixed by adjusting the ifndef INSTALL_ROOT section around lines 47-49 in Makefile.in

I changed it to:

INSTALL_ROOT ?= $(DESTDIR)

which worked on NetBSD and for my application, this of course would need more testing as all I wanted was for expat to complile, not install.

----------------------------------------------------------------------

>Comment By: Karl Waclawek (kwaclaw)
Date: 2009-01-17 13:30

Message:
No complaints received.

----------------------------------------------------------------------

Comment By: Karl Waclawek (kwaclaw)
Date: 2007-05-11 13:28

Message:
Logged In: YES 
user_id=290026
Originator: NO

The latest patch (see the related issue #1490371) removes
the conditional directive altogether, but reverses the roles
of INSTALL_ROOT and DESDIR. This should hopefully work for
most use cases while still being more cross-platform compatible.

----------------------------------------------------------------------

Comment By: Karl Waclawek (kwaclaw)
Date: 2007-05-05 13:28

Message:
Logged In: YES 
user_id=290026
Originator: NO

In an attempt to make Makefile.in more compatible across platforms I have
modified
the conditional directive above yet again:

ifeq ($(INSTALL_ROOT),)
INSTALL_ROOT = $(DESTDIR)
endif

Let's hope this will be more successful. 
Applied in Makefile.in rev. 1.57.


----------------------------------------------------------------------

Comment By: davidharpe (davidharpe)
Date: 2007-01-02 14:23

Message:
Logged In: YES 
user_id=1681745
Originator: NO

I had the same problem on FreeBSD.  Change lines 47-49 to:

.ifndef INSTALL_ROOT
INSTALL_ROOT=$(DESTDIR) 
.endif

(note the leading period)

Seems to work fine.

----------------------------------------------------------------------

Comment By: Karl Waclawek (kwaclaw)
Date: 2006-12-13 12:27

Message:
Logged In: YES 
user_id=290026
Originator: NO

Well, I thought about it, and "?=" seems acceptable.
It only assigns if the symbol is undefined, whereas "ifndef" assigns when
the
symbol is the empty string or undefined. I'll change that accordingly.
Committed in Makefile.in rev. 1.56.

----------------------------------------------------------------------

Comment By: Karl Waclawek (kwaclaw)
Date: 2006-12-12 14:32

Message:
Logged In: YES 
user_id=290026
Originator: NO

Apparently - after doing a Goole search - Solaris as well as BSD Make
have issues with the "ifndef" syntax. Is there a way to keep the logic
with another syntax? It looks as if "?=" does not have exactly the same
logic.

----------------------------------------------------------------------

Comment By: Bryan Rehbein (squallbsr)
Date: 2006-12-11 14:54

Message:
Logged In: YES 
user_id=950269
Originator: NO

Bug reported by: br39290 at squall.us

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=110127&aid=1613457&group_id=10127


More information about the Expat-bugs mailing list