emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
@ 2011-07-06  1:11 Jude DaShiell
  2011-07-07 14:42 ` Bastien
  0 siblings, 1 reply; 21+ messages in thread
From: Jude DaShiell @ 2011-07-06  1:11 UTC (permalink / raw)
  To: emacs-orgmode

diff -c a//Makefile b//Makefile
*** a//Makefile	2011-07-05 21:05:08.000000000 -0400
--- b//Makefile	2011-07-05 21:05:21.000000000 -0400
***************
*** 14,20 ****
  EMACS=emacs
  
  # Where local software is found
! prefix=/usr/local
  
  # Where local lisp files go.
  lispdir   = $(prefix)/share/emacs/site-lisp
--- 14,23 ----
  EMACS=emacs
  
  # Where local software is found
! #prefix=/usr/local
! # solve debian and slackware prefix problem.
! # if using slackware or debian uncomment next line and comment line above this line.
! prefix=/usr
  
  # Where local lisp files go.
  lispdir   = $(prefix)/share/emacs/site-lisp
***************
*** 51,57 ****
  CP = cp -p
  
  # Name of the program to install info files
! INSTALL_INFO=install-info
  
  ##----------------------------------------------------------------------
  ##  BELOW THIS LINE ON YOUR OWN RISK!
--- 54,63 ----
  CP = cp -p
  
  # Name of the program to install info files
! #INSTALL_INFO=install-info
! # solve debian install-info program name problem.
! # if using debian uncomment next line and comment line above this line.
! INSTALL_INFO=ginstall-info
  
  ##----------------------------------------------------------------------
  ##  BELOW THIS LINE ON YOUR OWN RISK!

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-06  1:11 patch org-mode Makefile - solve a couple debian build problems and a slackware build problem Jude DaShiell
@ 2011-07-07 14:42 ` Bastien
  2011-07-08  7:33   ` Jude DaShiell
  0 siblings, 1 reply; 21+ messages in thread
From: Bastien @ 2011-07-07 14:42 UTC (permalink / raw)
  To: Jude DaShiell; +Cc: emacs-orgmode

Hi Jude,

I infer this patch will break most non-debian/slackware configs.
Could you provide a patch that works for *every* distro, including 
debian and slackware?

Thanks!

Jude DaShiell <jdashiel@shellworld.net> writes:

> diff -c a//Makefile b//Makefile
> *** a//Makefile	2011-07-05 21:05:08.000000000 -0400
> --- b//Makefile	2011-07-05 21:05:21.000000000 -0400

-- 
 Bastien

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-07 14:42 ` Bastien
@ 2011-07-08  7:33   ` Jude DaShiell
  2011-07-08  8:21     ` Bastien
                       ` (2 more replies)
  0 siblings, 3 replies; 21+ messages in thread
From: Jude DaShiell @ 2011-07-08  7:33 UTC (permalink / raw)
  To: Bastien; +Cc: emacs-orgmode

No I can't provide any patch that works with all distros.  I don't have 
all distros available to me; not all Linux distros are accessible for 
screen reader users either.  I use screen reading software just to use a 
computer and I don't have all distros even under the category of distros 
that are accessible yet.

To use org-mode default uncomment /usr/local as prefix for all systems 
that put emacs stuff or some emacs stuff under /usr/local.  For 
Slackware and Debian though, /usr/local isn't in the load-paths.  The 
install-info part of the patch was using debian's install-info program 
all along and that was apparently depricated in favor of ginstall-info.  
That change will effect other distros into the future as they update 
their packages.  The org-mode default would be to uncomment install-info 
choice but debian squeeze needs ginstall-info uncommented.  There's 
another reason I can't provide better patches.  The Makefile structure 
itself.  I wrote code earlier which tested if [ -r /etc/debian_version 
]; then and took action if that was true but putting it into the 
variables section of the Make file and running make caused make to freak 
out on me with the complaint that commands were in the variables 
section.  Apparently Makefile structure and COBOL share some 
similarities and not the good ones.

On Thu, 7 Jul 2011, Bastien wrote:

> Hi Jude,
> 
> I infer this patch will break most non-debian/slackware configs.
> Could you provide a patch that works for *every* distro, including 
> debian and slackware?
> 
> Thanks!
> 
> Jude DaShiell <jdashiel@shellworld.net> writes:
> 
> > diff -c a//Makefile b//Makefile
> > *** a//Makefile	2011-07-05 21:05:08.000000000 -0400
> > --- b//Makefile	2011-07-05 21:05:21.000000000 -0400
> 
> 

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08  7:33   ` Jude DaShiell
@ 2011-07-08  8:21     ` Bastien
  2011-07-08  9:10     ` Nick Dokos
  2011-07-08 10:34     ` Jambunathan K
  2 siblings, 0 replies; 21+ messages in thread
From: Bastien @ 2011-07-08  8:21 UTC (permalink / raw)
  To: Jude DaShiell; +Cc: emacs-orgmode

Hi Jude,

I understand.

I think we can go with a FAQ: "How to compile and install Org under
Debian and Slackware?", then include your patch in the answer.

Can someone confirm Jude's patch solves install issues for Debian 
and Slackware?  

Thanks,

-- 
 Bastien

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08  7:33   ` Jude DaShiell
  2011-07-08  8:21     ` Bastien
@ 2011-07-08  9:10     ` Nick Dokos
  2011-07-08  9:29       ` Bastien
  2011-07-08 22:07       ` Achim Gratz
  2011-07-08 10:34     ` Jambunathan K
  2 siblings, 2 replies; 21+ messages in thread
From: Nick Dokos @ 2011-07-08  9:10 UTC (permalink / raw)
  To: Jude DaShiell; +Cc: Bastien, nicholas.dokos, emacs-orgmode

Jude DaShiell <jdashiel@shellworld.net> wrote:

> To use org-mode default uncomment /usr/local as prefix for all systems 
> that put emacs stuff or some emacs stuff under /usr/local.  For 
> Slackware and Debian though, /usr/local isn't in the load-paths.  The 
> install-info part of the patch was using debian's install-info program 
> all along and that was apparently depricated in favor of ginstall-info.  
> That change will effect other distros into the future as they update 
> their packages.  The org-mode default would be to uncomment install-info 
> choice but debian squeeze needs ginstall-info uncommented.  There's 
> another reason I can't provide better patches.  The Makefile structure 
> itself.  I wrote code earlier which tested if [ -r /etc/debian_version 
> ]; then and took action if that was true but putting it into the 
> variables section of the Make file and running make caused make to freak 
> out on me with the complaint that commands were in the variables 
> section.  Apparently Makefile structure and COBOL share some 
> similarities and not the good ones.
> 

Most Linux systems I know of have a description of what distro is
installed in the /etc/issue file: Ubuntu, Debian, RH, Fedora, SuSE
certainly have it and others might (but I haven't run Slackware in 10
years, so I don't know if that's the case on it). If /etc/issue exists
and contains what I think it contains, then GNU make will parse a
Makefile like this:

--8<---------------cut here---------------start------------->8---
distro = $(shell sed 1q /etc/issue | cut -d' ' -f1 | tr A-Z a-z)

# default values
path=/usr/local
installinfo=install-info

ifeq ($(distro),debian)
	path=/usr/deb
        installinfo=ginstall-info
endif

ifeq ($(distro),slackware)
	path=/usr/slack
endif


all:
	echo ${path}
        echo ${installinfo}

--8<---------------cut here---------------end--------------->8---

There are supposedly better ways to write the conditionals, but trying
them on recent Ubuntu and old Debian, I got inconsistent results, so
I fell back to the above in order to satisfy both. I believe that
(modulo the existence of /etc/issue) it should run on any Linux distro
of any (relatively recent: say the last five years) vintage.

Having said that, I'm not sure that Jude's diagnosis is completely
correct.  It might very well be the case that debian squeeze installs
ginstall-info only: they certainly did that with earlier versions.  On
my Ubuntu 10.04 laptop, I have both and they are *different* programs:

-rwxr-xr-x 1 root root 40512 2010-02-11 08:49 /usr/bin/ginstall-info
-rwxr-xr-x 1 root root  6216 2011-01-06 14:15 /usr/sbin/install-info

In fact, on Ubuntu, install-info is a wrapper around ginstall-info:
in normal usage, it does not do *anything* other than calling ginstall-info.
Read the manual page for more details.

On debian, the problem can be circumvented by planting a symlink
wherever ginstall-info is installed:

   sudo ln -s /usr/bin/ginstall-info /usr/bin/install-info

Or the makefile can figure out if install-info exists and if it does not,
use ginstall-info in a way similar to the above:

--8<---------------cut here---------------start------------->8---
iiprog = $(shell which install-info)

# check if it is empty
ifeq ($(strip $(iiprog)),)
	iiprog = ginstall-info
endif
--8<---------------cut here---------------end--------------->8---


What I don't understand is the load-path comment: what is it that is
stopping one from adding /usr/local/something/or/other to his/her load-path and putting
it in the appropriate place in the list? Same thing with
Info-directory-list. I like to initialize the latter from the INFOPATH
environment variable, but in any case it ends up like this:

,----
| Info-directory-list is a variable defined in `info.el'.
| Its value is
| ("/home/nick/src/emacs/org/org-mode/doc" "/usr/local/share/info" "/usr/share/info")
`----

Isn't that enough?

Do other users of debian and slackware have similar difficulties? If so, why?

Nick

PS and then there is OS X and Windows, and other Unixes and who knows what else...

> On Thu, 7 Jul 2011, Bastien wrote:
> 
> > Hi Jude,
> > 
> > I infer this patch will break most non-debian/slackware configs.
> > Could you provide a patch that works for *every* distro, including 
> > debian and slackware?
> > 
> > Thanks!
> > 
> > Jude DaShiell <jdashiel@shellworld.net> writes:
> > 
> > > diff -c a//Makefile b//Makefile
> > > *** a//Makefile	2011-07-05 21:05:08.000000000 -0400
> > > --- b//Makefile	2011-07-05 21:05:21.000000000 -0400
> > 
> > 
> 
> 
> 

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08  9:10     ` Nick Dokos
@ 2011-07-08  9:29       ` Bastien
  2011-07-08 10:08         ` Andrea Crotti
  2011-07-08 22:07       ` Achim Gratz
  1 sibling, 1 reply; 21+ messages in thread
From: Bastien @ 2011-07-08  9:29 UTC (permalink / raw)
  To: nicholas.dokos; +Cc: Jude DaShiell, emacs-orgmode

Hi Nick,

Nick Dokos <nicholas.dokos@hp.com> writes:

> PS and then there is OS X and Windows, and other Unixes and who knows
> what else...

Indeed.  I'll apply every patch that

- doesn't break current Makefile commands
- does add a new func (even tiny) for specific distro

Please send some :)

-- 
 Bastien

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08  9:29       ` Bastien
@ 2011-07-08 10:08         ` Andrea Crotti
  0 siblings, 0 replies; 21+ messages in thread
From: Andrea Crotti @ 2011-07-08 10:08 UTC (permalink / raw)
  To: Bastien; +Cc: Jude DaShiell, nicholas.dokos, emacs-orgmode

Bastien <bzg@altern.org> writes:

>
> Indeed.  I'll apply every patch that
>
> - doesn't break current Makefile commands
> - does add a new func (even tiny) for specific distro
>
> Please send some :)

One way to make the whole deployment really portable could also be to
pass from plain Makefile to the autoconf beast.  This would also be good
to detect the Emacs version and existing external libraries which maybe
needed.

A few other extensions already do and I think it would decrease greatly
the amount of code needed (even if it would increase the "hidden
complexity").

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08  7:33   ` Jude DaShiell
  2011-07-08  8:21     ` Bastien
  2011-07-08  9:10     ` Nick Dokos
@ 2011-07-08 10:34     ` Jambunathan K
  2 siblings, 0 replies; 21+ messages in thread
From: Jambunathan K @ 2011-07-08 10:34 UTC (permalink / raw)
  To: Jude DaShiell; +Cc: Bastien, emacs-orgmode



Jude DaShiell <jdashiel@shellworld.net> writes:

> No I can't provide any patch that works with all distros.  I don't have 
> all distros available to me; not all Linux distros are accessible for 
> screen reader users either.  I use screen reading software just to use a 
> computer and I don't have all distros even under the category of distros 
> that are accessible yet.

I think there are build services that can simulate different
architectures and (maybe) distros. I wonder whether SuSE's build farm
could help you out here.

https://build.opensuse.org/

I am sure there are hosted services out there particularly to cater to
this need. You only need to talk to some folks who do packaging and they
will be able to point you to or lend some machine in the cloud that you
can use for deployment.

Why bother about Makefile etc for installing. Just use Emacs
package-manager for installing.

M-x list-packages.

You need Emacs-24.? though.

I am sure you can take your initiative a step further and send a feeler
to folks in the distros mailing list.


>
> To use org-mode default uncomment /usr/local as prefix for all systems 
> that put emacs stuff or some emacs stuff under /usr/local.  For 
> Slackware and Debian though, /usr/local isn't in the load-paths.  The 
> install-info part of the patch was using debian's install-info program 
> all along and that was apparently depricated in favor of ginstall-info.  
> That change will effect other distros into the future as they update 
> their packages.  The org-mode default would be to uncomment install-info 
> choice but debian squeeze needs ginstall-info uncommented.  There's 
> another reason I can't provide better patches.  The Makefile structure 
> itself.  I wrote code earlier which tested if [ -r /etc/debian_version 
> ]; then and took action if that was true but putting it into the 
> variables section of the Make file and running make caused make to freak 
> out on me with the complaint that commands were in the variables 
> section.  Apparently Makefile structure and COBOL share some 
> similarities and not the good ones.
>
> On Thu, 7 Jul 2011, Bastien wrote:
>
>> Hi Jude,
>> 
>> I infer this patch will break most non-debian/slackware configs.
>> Could you provide a patch that works for *every* distro, including 
>> debian and slackware?
>> 
>> Thanks!
>> 
>> Jude DaShiell <jdashiel@shellworld.net> writes:
>> 
>> > diff -c a//Makefile b//Makefile
>> > *** a//Makefile	2011-07-05 21:05:08.000000000 -0400
>> > --- b//Makefile	2011-07-05 21:05:21.000000000 -0400
>> 
>> 
>
>
>
>

-- 

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08  9:10     ` Nick Dokos
  2011-07-08  9:29       ` Bastien
@ 2011-07-08 22:07       ` Achim Gratz
  2011-07-08 22:50         ` Nick Dokos
  1 sibling, 1 reply; 21+ messages in thread
From: Achim Gratz @ 2011-07-08 22:07 UTC (permalink / raw)
  To: emacs-orgmode

Nick Dokos <nicholas.dokos@hp.com> writes:
> Most Linux systems I know of have a description of what distro is
> installed in the /etc/issue file: Ubuntu, Debian, RH, Fedora, SuSE
[...]

True, but it's not reliable since it is quite common to customize the
login message.  And the next thing of course is that you don't have that
file at all on Windows, where the Makefile should also work.

I the dark ages when different makes ruled, it was common to have
Makefile.vms Makefile.SysV or something like that.  Maybe something
along those lines plus some notes in README or an additonal INSTALL
would be more appropriate?


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Wavetables for the Terratec KOMPLEXER:
http://Synth.Stromeko.net/Downloads.html#KomplexerWaves

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08 22:07       ` Achim Gratz
@ 2011-07-08 22:50         ` Nick Dokos
  2011-07-09  6:26           ` Achim Gratz
  0 siblings, 1 reply; 21+ messages in thread
From: Nick Dokos @ 2011-07-08 22:50 UTC (permalink / raw)
  To: Achim Gratz; +Cc: nicholas.dokos, emacs-orgmode

Achim Gratz <Stromeko@nexgo.de> wrote:

> Nick Dokos <nicholas.dokos@hp.com> writes:
> > Most Linux systems I know of have a description of what distro is
> > installed in the /etc/issue file: Ubuntu, Debian, RH, Fedora, SuSE
> [...]
> 
> True, but it's not reliable since it is quite common to customize the
> login message.  And the next thing of course is that you don't have that
> file at all on Windows, where the Makefile should also work.
> 
> I the dark ages when different makes ruled, it was common to have
> Makefile.vms Makefile.SysV or something like that.  Maybe something
> along those lines plus some notes in README or an additonal INSTALL
> would be more appropriate?
> 

I'm actually hoping that nothing of the sort will be needed, but given
that I don't have either debian squeeze or slackware available, I can't
really see what goes wrong.

As for /etc/issue, you are probably right: I never touch it but that
means nothing. OTOH, it does illustrate how to make Makefiles do stupid
pet tricks.

Nick

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-08 22:50         ` Nick Dokos
@ 2011-07-09  6:26           ` Achim Gratz
  2011-07-09  8:38             ` Bastien
  2011-07-09 16:00             ` Nick Dokos
  0 siblings, 2 replies; 21+ messages in thread
From: Achim Gratz @ 2011-07-09  6:26 UTC (permalink / raw)
  To: emacs-orgmode

Nick Dokos <nicholas.dokos@hp.com> writes:
> I'm actually hoping that nothing of the sort will be needed, but given
> that I don't have either debian squeeze or slackware available, I can't
> really see what goes wrong.

Well, I've had a look on some server I have admin access to: what goes
wrong on Debian (Lenny+Backports) is this:

# install-info --version
Debian install-info Version 1.14.31.
# ginstall-info --version
install-info (GNU texinfo) 4.13

The Makefile obviously expects a GNU install-info (which should probably
be documented someplace).  Now, install-info lives in /usr/sbin/ and
ginstall-info in /usr/bin, also linked to /usr/bin/install-info.  But if
you're installing as root (something I don't really fancy, but it's
probably too late for Linux to rectify that), /usr/sbin/ is earlier in
your path than /usr/bin.

So, in this particular case it should be sufficient to just drop /sbin
and /usr/sbin from the PATH during make.

> As for /etc/issue, you are probably right: I never touch it but that
> means nothing. OTOH, it does illustrate how to make Makefiles do stupid
> pet tricks.

A Makefile is not the place to pull stunts, IMHO.  Whenever you feel
that should become necessary, maybe it's time to go autoconf or some
similar mechanism.  I don't think that's the right thing to do for
org-mode, since it again adds some dependency on other software.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptations for Waldorf Q V3.00R3 and Q+ V3.54R2:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-09  6:26           ` Achim Gratz
@ 2011-07-09  8:38             ` Bastien
  2011-07-09 16:00             ` Nick Dokos
  1 sibling, 0 replies; 21+ messages in thread
From: Bastien @ 2011-07-09  8:38 UTC (permalink / raw)
  To: Achim Gratz; +Cc: emacs-orgmode

Hi Achim,

Achim Gratz <Stromeko@nexgo.de> writes:

> A Makefile is not the place to pull stunts, IMHO.  Whenever you feel
> that should become necessary, maybe it's time to go autoconf or some
> similar mechanism.  I don't think that's the right thing to do for
> org-mode, since it again adds some dependency on other software.

I'm not a big fan of considering autoconf either.

Wild guess:

- 90% of Org users use the Emacs version;
- for those who do not, 90% can live with the current Makefile;
- for the 10% that cannot run the Makefile:
  - 50% will just locally add the right load-path and info-path
  - 50% will need more install information.

The solution I suggest is to clearly document the few exceptions 
(0.5%) for those who need them.

-- 
 Bastien

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-09  6:26           ` Achim Gratz
  2011-07-09  8:38             ` Bastien
@ 2011-07-09 16:00             ` Nick Dokos
  2011-07-09 16:40               ` Achim Gratz
  2011-07-09 20:45               ` Jude DaShiell
  1 sibling, 2 replies; 21+ messages in thread
From: Nick Dokos @ 2011-07-09 16:00 UTC (permalink / raw)
  To: Achim Gratz; +Cc: nicholas.dokos, emacs-orgmode

Achim Gratz <Stromeko@nexgo.de> wrote:

> Nick Dokos <nicholas.dokos@hp.com> writes:
> > I'm actually hoping that nothing of the sort will be needed, but given
> > that I don't have either debian squeeze or slackware available, I can't
> > really see what goes wrong.
> 
> Well, I've had a look on some server I have admin access to: what goes
> wrong on Debian (Lenny+Backports) is this:
> 
> # install-info --version
> Debian install-info Version 1.14.31.
> # ginstall-info --version
> install-info (GNU texinfo) 4.13
> 
> The Makefile obviously expects a GNU install-info (which should probably
> be documented someplace).  Now, install-info lives in /usr/sbin/ and
> ginstall-info in /usr/bin, also linked to /usr/bin/install-info.  But if
> you're installing as root (something I don't really fancy, but it's
> probably too late for Linux to rectify that), /usr/sbin/ is earlier in
> your path than /usr/bin.
> 
> So, in this particular case it should be sufficient to just drop /sbin
> and /usr/sbin from the PATH during make.
> 

But from what I saw in the Ubuntu man-page, debian install-info is a wrapper
around GNU install-info that does *nothing different* in the ``normal'' case.
It only behaves differently when one is doing Debian maintenance thingies, whatever
that means - from the man page:

,----
|        install-info  is  a  wrapper  around GNU install-info. If it is called from a normal shell or
|        script it acts like GNU install-info by forwarding all options to ginstall-info.
| 
|        If it is called from a maintainer script it gives a warning  to  rebuild  packages  and  does
|        nothing, since info file installation is now done via triggers.
`----

What happens when you run the org make on that system with no changes at all? Does
anything break?

Nick

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-09 16:00             ` Nick Dokos
@ 2011-07-09 16:40               ` Achim Gratz
  2011-07-09 20:45               ` Jude DaShiell
  1 sibling, 0 replies; 21+ messages in thread
From: Achim Gratz @ 2011-07-09 16:40 UTC (permalink / raw)
  To: emacs-orgmode

Nick Dokos <nicholas.dokos@hp.com> writes:
> But from what I saw in the Ubuntu man-page, debian install-info is a wrapper
> around GNU install-info that does *nothing different* in the ``normal'' case.
> It only behaves differently when one is doing Debian maintenance thingies, whatever
> that means - from the man page:

This is confusing, all right — here's what the system really looks like:
/usr/bin/install-info is a wrapper script that calls
/usr/bin/ginstall-info; /usr/sbin/install-info is an entirely different
program, not a wrapper.

> What happens when you run the org make on that system with no changes at all? Does
> anything break?

No can do, sorry.  The only Debian system I have access to is a server
that only has a minimal system installed.  However, as explained
previously, the reason for org-mode make breaking is that while running
as root make will find /usr/sbin/install-info first.  There really is no
good reason for root to be installing user-mode programs with any "sbin"
in path, but it's hard to unwind these decisions that have become part
of the "culture" of certain distributions.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptation for Waldorf microQ V2.22R2:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-09 16:00             ` Nick Dokos
  2011-07-09 16:40               ` Achim Gratz
@ 2011-07-09 20:45               ` Jude DaShiell
  2011-07-10  1:40                 ` Nick Dokos
  2011-07-10  7:24                 ` Achim Gratz
  1 sibling, 2 replies; 21+ messages in thread
From: Jude DaShiell @ 2011-07-09 20:45 UTC (permalink / raw)
  To: Nick Dokos; +Cc: Achim Gratz, emacs-orgmode

If a make is done on debian squeeze with default org-mode install-info 
which is debian's version of install-info complains that it's not gnu 
info and tells you to use ginstall-info when a make install-info-debian 
or make install-info is tried and neither one of those switches for make 
upgrades the info documentation.  My hardware speech synthesizer is in 
the freezer because it's on its last legs but I may be able to take it 
out and run electricity through it one last time and check things out in 
Slackware.  The espeakup debian version I use sends speech out my sound 
card but slackware for now requires a hardware speech synthesizer.

On Sat, 9 Jul 2011, Nick Dokos wrote:

> Achim Gratz <Stromeko@nexgo.de> wrote:
> 
> > Nick Dokos <nicholas.dokos@hp.com> writes:
> > > I'm actually hoping that nothing of the sort will be needed, but given
> > > that I don't have either debian squeeze or slackware available, I can't
> > > really see what goes wrong.
> > 
> > Well, I've had a look on some server I have admin access to: what goes
> > wrong on Debian (Lenny+Backports) is this:
> > 
> > # install-info --version
> > Debian install-info Version 1.14.31.
> > # ginstall-info --version
> > install-info (GNU texinfo) 4.13
> > 
> > The Makefile obviously expects a GNU install-info (which should probably
> > be documented someplace).  Now, install-info lives in /usr/sbin/ and
> > ginstall-info in /usr/bin, also linked to /usr/bin/install-info.  But if
> > you're installing as root (something I don't really fancy, but it's
> > probably too late for Linux to rectify that), /usr/sbin/ is earlier in
> > your path than /usr/bin.
> > 
> > So, in this particular case it should be sufficient to just drop /sbin
> > and /usr/sbin from the PATH during make.
> > 
> 
> But from what I saw in the Ubuntu man-page, debian install-info is a wrapper
> around GNU install-info that does *nothing different* in the ``normal'' case.
> It only behaves differently when one is doing Debian maintenance thingies, whatever
> that means - from the man page:
> 
> ,----
> |        install-info  is  a  wrapper  around GNU install-info. If it is called from a normal shell or
> |        script it acts like GNU install-info by forwarding all options to ginstall-info.
> | 
> |        If it is called from a maintainer script it gives a warning  to  rebuild  packages  and  does
> |        nothing, since info file installation is now done via triggers.
> `----
> 
> What happens when you run the org make on that system with no changes at all? Does
> anything break?
> 
> Nick
> 
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-09 20:45               ` Jude DaShiell
@ 2011-07-10  1:40                 ` Nick Dokos
  2011-07-10  1:44                   ` Nick Dokos
  2011-07-10  8:16                   ` Jude DaShiell
  2011-07-10  7:24                 ` Achim Gratz
  1 sibling, 2 replies; 21+ messages in thread
From: Nick Dokos @ 2011-07-10  1:40 UTC (permalink / raw)
  To: Jude DaShiell; +Cc: Achim Gratz, emacs-orgmode, nicholas.dokos

Jude DaShiell <jdashiel@shellworld.net> wrote:

> If a make is done on debian squeeze with default org-mode install-info 
> which is debian's version of install-info complains that it's not gnu 
> info and tells you to use ginstall-info when a make install-info-debian 
> or make install-info is tried and neither one of those switches for make 
> upgrades the info documentation.

OK. Since a debian-specific target exists and is documented, how about
using ginstall-info explicitly in the install-info-debian target in the
Makefile like this:

--8<---------------cut here---------------start------------->8---
install-info-debian: $(INFOFILES)
	ginstall-info --infodir=$(infodir) $(INFOFILES)
--8<---------------cut here---------------end--------------->8---

Will this work for debian?

Nick

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-10  1:40                 ` Nick Dokos
@ 2011-07-10  1:44                   ` Nick Dokos
  2011-07-10  8:16                   ` Jude DaShiell
  1 sibling, 0 replies; 21+ messages in thread
From: Nick Dokos @ 2011-07-10  1:44 UTC (permalink / raw)
  Cc: Jude DaShiell, Achim Gratz, emacs-orgmode, nicholas.dokos

Nick Dokos <nicholas.dokos@hp.com> wrote:

> Jude DaShiell <jdashiel@shellworld.net> wrote:
> 
> > If a make is done on debian squeeze with default org-mode install-info 
> > which is debian's version of install-info complains that it's not gnu 
> > info and tells you to use ginstall-info when a make install-info-debian 
> > or make install-info is tried and neither one of those switches for make 
> > upgrades the info documentation.
> 
> OK. Since a debian-specific target exists and is documented, how about
> using ginstall-info explicitly in the install-info-debian target in the
> Makefile like this:
> 
> install-info-debian: $(INFOFILES)
> 	ginstall-info --infodir=$(infodir) $(INFOFILES)
> 
> Will this work for debian?
> 

Actually, it probably needs to mirror the options in the standard case:

	ginstall-info --info-file=$(INFOFILES) --info-dir=$(infodir)

Nick

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-09 20:45               ` Jude DaShiell
  2011-07-10  1:40                 ` Nick Dokos
@ 2011-07-10  7:24                 ` Achim Gratz
  2011-07-10  8:13                   ` Jude DaShiell
  1 sibling, 1 reply; 21+ messages in thread
From: Achim Gratz @ 2011-07-10  7:24 UTC (permalink / raw)
  To: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 882 bytes --]

Hi Jude, 

Jude DaShiell <jdashiel@shellworld.net> writes:
> If a make is done on debian squeeze with default org-mode install-info 
> which is debian's version of install-info complains that it's not gnu 
> info and tells you to use ginstall-info when a make install-info-debian 
> or make install-info is tried and neither one of those switches for make 
> upgrades the info documentation.

If it tells you that it is GNU info, then you've actually called
/usr/bin/install-info and it should — aside from this message — work:
what did you set $infodir to?  Does this directory exist and have the
new info files been copied into it (there may be old files still there,
so please check the date)?

Anyway, from the man pages it looks like this patch should remove the
incompatibility between dpkg install-info and GNU install-info on Debian
and not change anything for others.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-possible-solution-for-Debian-install-info-charade.patch --]
[-- Type: text/x-patch, Size: 773 bytes --]

From a2399077495e716d0dd1faa3d491a379d2015065 Mon Sep 17 00:00:00 2001
From: Achim Gratz <Stromeko@Stromeko.DE>
Date: Sun, 10 Jul 2011 08:42:20 +0200
Subject: [PATCH] possible solution for Debian install-info charade

---
 Makefile |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/Makefile b/Makefile
index a09ed83..a2940b0 100644
--- a/Makefile
+++ b/Makefile
@@ -221,9 +221,6 @@ install-lisp: $(LISPFILES) $(ELCFILES)
 install-info: $(INFOFILES)
 	if [ ! -d $(infodir) ]; then $(MKDIR) $(infodir); else true; fi ;
 	$(CP) $(INFOFILES) $(infodir)
-	$(INSTALL_INFO) --info-file=$(INFOFILES) --info-dir=$(infodir)
-
-install-info-debian: $(INFOFILES)
 	$(INSTALL_INFO) --infodir=$(infodir) $(INFOFILES)
 
 autoloads: lisp/org-install.el
-- 
1.7.6


[-- Attachment #3: Type: text/plain, Size: 452 bytes --]


You will still get the warning about the two install-info versions on
Debian if you call it through their wrapper script, but based on my
(limited) testing it should work with all versions of install-info if
the rest of the setup is OK.

Can you please test this?


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Wavetables for the Terratec KOMPLEXER:
http://Synth.Stromeko.net/Downloads.html#KomplexerWaves

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-10  7:24                 ` Achim Gratz
@ 2011-07-10  8:13                   ` Jude DaShiell
  2011-07-10  8:40                     ` Achim Gratz
  0 siblings, 1 reply; 21+ messages in thread
From: Jude DaShiell @ 2011-07-10  8:13 UTC (permalink / raw)
  To: Achim Gratz; +Cc: emacs-orgmode

I just ran make update && make all && sudo make install && sudo make 
install-info-debian and updated org-mode to 7.6.  I put two mods into the 
org-mode default Make file.  The prefix I changed to /usr and the change 
suggested on install-info-debian target changing out $(infodir) with 
ginstall-info I think on line 227 and won't know if this patch will work 
since the message nothing to be done for install-info-debian came back.  
A command of info org tells me the documentation is current for org 7.50.  
When either documentation gets updated or version of documentation gets 
updated (may be enough to install new documentation just doing that) I'll 
be able to do some testing.  I need to read up on patch before trying to 
extract patches from messages and applying them locally so I do it 
right.On Sun, 10 Jul 2011, Achim Gratz wrote:


> Hi Jude, 
> 
> Jude DaShiell <jdashiel@shellworld.net> writes:
> > If a make is done on debian squeeze with default org-mode install-info 
> > which is debian's version of install-info complains that it's not gnu 
> > info and tells you to use ginstall-info when a make install-info-debian 
> > or make install-info is tried and neither one of those switches for make 
> > upgrades the info documentation.
> 
> If it tells you that it is GNU info, then you've actually called
> /usr/bin/install-info and it should ? aside from this message ? work:
> what did you set $infodir to?  Does this directory exist and have the
> new info files been copied into it (there may be old files still there,
> so please check the date)?
> 
> Anyway, from the man pages it looks like this patch should remove the
> incompatibility between dpkg install-info and GNU install-info on Debian
> and not change anything for others.
> 
> 

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-10  1:40                 ` Nick Dokos
  2011-07-10  1:44                   ` Nick Dokos
@ 2011-07-10  8:16                   ` Jude DaShiell
  1 sibling, 0 replies; 21+ messages in thread
From: Jude DaShiell @ 2011-07-10  8:16 UTC (permalink / raw)
  To: Nick Dokos; +Cc: Achim Gratz, emacs-orgmode

I'll know when the documentation gets an update.  Thanks.On Sat, 9 Jul 
2011, Nick Dokos wrote:

> Jude DaShiell <jdashiel@shellworld.net> wrote:
> 
> > If a make is done on debian squeeze with default org-mode install-info 
> > which is debian's version of install-info complains that it's not gnu 
> > info and tells you to use ginstall-info when a make install-info-debian 
> > or make install-info is tried and neither one of those switches for make 
> > upgrades the info documentation.
> 
> OK. Since a debian-specific target exists and is documented, how about
> using ginstall-info explicitly in the install-info-debian target in the
> Makefile like this:
> 
> --8<---------------cut here---------------start------------->8---
> install-info-debian: $(INFOFILES)
> 	ginstall-info --infodir=$(infodir) $(INFOFILES)
> --8<---------------cut here---------------end--------------->8---
> 
> Will this work for debian?
> 
> Nick
> 
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: patch org-mode Makefile - solve a couple debian build problems and a slackware build problem
  2011-07-10  8:13                   ` Jude DaShiell
@ 2011-07-10  8:40                     ` Achim Gratz
  0 siblings, 0 replies; 21+ messages in thread
From: Achim Gratz @ 2011-07-10  8:40 UTC (permalink / raw)
  To: emacs-orgmode

Hi Jude,

Jude DaShiell <jdashiel@shellworld.net> writes:
> I just ran make update && make all && sudo make install && sudo make 
> install-info-debian and updated org-mode to 7.6.

That does not work, you would need to do

sudo make install-info && sudo make install-info-debian

with the original Makefile - only change the prefix, not anything else.

The patch I gave you removes the install-info-debian target and can be
applied by saving the whole message to patchfile and then calling

git apply patchfile

Alternatively you can just say

patch < patchfile

in the org directory.  Then a

make update && make all && sudo make install && sudo make install-info

should result in an updated info documentation (i.e. the first page
should have "This manual is for Org version 7.6".


HTH,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptations for Waldorf Q V3.00R3 and Q+ V3.54R2:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2011-07-10  8:40 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-06  1:11 patch org-mode Makefile - solve a couple debian build problems and a slackware build problem Jude DaShiell
2011-07-07 14:42 ` Bastien
2011-07-08  7:33   ` Jude DaShiell
2011-07-08  8:21     ` Bastien
2011-07-08  9:10     ` Nick Dokos
2011-07-08  9:29       ` Bastien
2011-07-08 10:08         ` Andrea Crotti
2011-07-08 22:07       ` Achim Gratz
2011-07-08 22:50         ` Nick Dokos
2011-07-09  6:26           ` Achim Gratz
2011-07-09  8:38             ` Bastien
2011-07-09 16:00             ` Nick Dokos
2011-07-09 16:40               ` Achim Gratz
2011-07-09 20:45               ` Jude DaShiell
2011-07-10  1:40                 ` Nick Dokos
2011-07-10  1:44                   ` Nick Dokos
2011-07-10  8:16                   ` Jude DaShiell
2011-07-10  7:24                 ` Achim Gratz
2011-07-10  8:13                   ` Jude DaShiell
2011-07-10  8:40                     ` Achim Gratz
2011-07-08 10:34     ` Jambunathan K

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).