actually, you're right, if any depends are in /usr/local, configure will fail, so we can lose this after all
On Mon, Jan 12, 2015 at 11:17:16PM +0100, Romain Naour wrote: > Hi Nicholas, all > > Le 11/01/2015 00:46, Nicholas Marriott a ??crit : > > Hmm well I think it's nice if users can just download the tarball and run > > configure and it works without having to point it at dependencies, something > > which regularly confuses users. /usr/local is a common default location for > > local builds, I've occasionally been tempted to add some others too. > > > > Still, I'm not sure there is any evidence having this particulatly helps > > anybody, libevent and ncurses are part of base on OpenBSD, NetBSD uses > > /usr/pkg, > > GCC on Linux mostly searches /usr/local by default. I suspect the FreeBSD > > compiler searches /usr/local by default as well, I'll have a look at some > > point. > > > > In the meantime, if you add your own include directories, they should be > > searched first no matter what tmux adds. > > Searching for headers is the purpose of configure script, and if user use a > custom/local path then let it define these in CFLAGS. > This is what we do when tmux is cross-compiled in Buildroot. > > See an example here: > http://pastebin.com/T6Ng5Bn8 > > Which dependencies of tmux are assumed to be in /usr/local ? > > Best regards, > Romain Naour > > > > > > -------- Original message -------- > > From: Romain Naour > > Date:10/01/2015 23:09 (GMT+00:00) > > To: Nicholas Marriott > > Cc: tmux-us...@lists.sf.net > > Subject: Re: [PATCH] Makefile.am: remove unsafe headers path > > > > Hi Nicholas, > > > > Le 10/01/2015 18:16, Nicholas Marriott a ??crit : > >> Well, why is it unsafe? I'm not too concerned about crossbuilding TBH. Are > >> you > >> sure this isn't still needed on eg FreeBSD? > > > > Ok, let's me explain my use case. > > > > tmux has been packaged in Buildroot [1][2] (and probably Yoto too) and the > > build > > system use a cross-compiler to build the entire target system. > > > > Also all headers and libraries for the target are installed in a specific > > directory called STAGING_DIR. So using a path like /usr/local/include can > > lead > > to mixing headers from host and target (that may come from different > > versions). > > > > That why all paths that point to a host location (starting with > > /usr/include, > > /usr/local/include or /lib) is considered unsafe for cross-compilation. > > > > Recently, we added in Buildroot a tool to check if host headers or libraries > > paths are used [3]. > > > > Regarding FreeBSD compatibility, I'm not sure (I'm not a FreeBSB user). > > Probably yes, they still need /usr/local/include for native build. > > > > But I think, it's the user's responsibility to ensure that their compiler > > searches for headers in the appropriate location, not the tmux's Makefile. > > Especially when headers paths are passed on the command line. > > > > For example, on my Fedora host the /usr/local/include is an empty directory, > > It's not needed to force to use this path in the CFLAGS even for a native > > build. > > > > Or consider using pkg-config to search for headers and libraries (ncurses > > and > > libevent). > > > > Best regards, > > Romain Naour > > > > [1] http://buildroot.org/ > > [2] http://git.buildroot.net/buildroot/tree/package/tmux > > [3] http://lists.busybox.net/pipermail/buildroot/2014-December/114848.html > >> > >> -------- Original message -------- > >> From: Romain Naour > >> Date:10/01/2015 14:12 (GMT+00:00) > >> To: nicholas.marri...@gmail.com > >> Cc: tmux-us...@lists.sf.net > >> Subject: Re: [PATCH] Makefile.am: remove unsafe headers path > >> > >> Hi, > >> > >> Le 29/12/2014 22:35, Romain Naour a ??crit : > >>> /usr/local/include is probably not needed and it's unsafe for > >>> cross-compilation. > >>> > >>> Signed-off-by: Romain Naour <romain.na...@openwide.fr> > >>> --- > >>> Makefile.am | 4 ++-- > >>> 1 file changed, 2 insertions(+), 2 deletions(-) > >>> > >>> diff --git a/Makefile.am b/Makefile.am > >>> index a9ad5b9..0109e5d 100644 > >>> --- a/Makefile.am > >>> +++ b/Makefile.am > >>> @@ -38,12 +38,12 @@ else > >>> CFLAGS += -O2 > >>> endif > >>> if IS_GCC4 > >>> -CPPFLAGS += -iquote. -I/usr/local/include > >>> +CPPFLAGS += -iquote. > >>> if IS_DEBUG > >>> CFLAGS += -Wno-pointer-sign > >>> endif > >>> else > >>> -CPPFLAGS += -I. -I- -I/usr/local/include > >>> +CPPFLAGS += -I. -I- > >>> endif > >>> endif > >>> > >>> > >> > >> Please, consider this patch for the next release. > >> > >> Thanks. > >> > >> Best regards, > >> Romain Naour > > -- > Romain Naour > > OPEN WIDE Ing??nierie - Paris > 23/25, rue Daviel| 75013 PARIS > http://ingenierie.openwide.fr > > Le blog des technologies libres et embarqu??es : > http://www.linuxembedded.fr ------------------------------------------------------------------------------ New Year. New Location. New Benefits. New Data Center in Ashburn, VA. GigeNET is offering a free month of service with a new server in Ashburn. Choose from 2 high performing configs, both with 100TB of bandwidth. Higher redundancy.Lower latency.Increased capacity.Completely compliant. http://p.sf.net/sfu/gigenet _______________________________________________ tmux-users mailing list tmux-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tmux-users