Thread: [Cgdb-devel] Re: cgdb 0.5.1 make DESTDIR=... doesn't work
Brought to you by:
bobbybrasko,
crouchingturbo
From: Robert R. <bob...@co...> - 2005-04-03 22:47:01
|
On Sun, Apr 03, 2005 at 06:27:21PM +0000, Bennett Todd wrote: > The DESTDIR target is for overriding the install dest (more > precisely, prepending some temporary prefix to it) for creating > software packages. > > You seem to have most of the structure for DESTDIR-relative installs > in place, but not quite all, when I try one I get an error > > make 'DESTDIR=/var/tmp/bpmbuild.20581/root' install > [...] > /bin/bash ../../../../config/mkinstalldirs /var/tmp/bpmbuild.20581/root../../../../progs > mkdir -p -- /var/tmp/bpmbuild.20581/root../../../../progs > cannot create directory `/var/tmp/bpmbuild.20581/root../../../../progs': Permission denied > make[5]: *** [install-noinst_binPROGRAMS] Error 1 > make[5]: Leaving directory `/var/tmp/bpmbuild.20581/build/cgdb-0.5.1/cgdb/lib/kui/src' > > Note that the DESTDIR is getting a string of ../../..s appended to > it, with no slash before, which is wrong twice. Happily, I run make > install as a non-root user, so this didn't whizz on the root of my > filesystem. Ouch, that could be ugly. Thanks for the input. I've never used DESTDIR before, how is this different than ./configure --prefix=/var/tmp/bpmbuild.20581/root ? Anyone have a quick suggestion on how to fix this? Thanks, Bob Rossi |
From: Bennett T. <be...@ra...> - 2005-04-03 23:01:12
|
2005-04-03T22:46:50 Robert Rossi: > I've never used DESTDIR before, how is this different than ./configure > --prefix=/var/tmp/bpmbuild.20581/root ? When creating a software package, e.g. rpm, or my own bpm, the typical pattern is ./configure --prefix=/usr --mandir=/usr/share/man make make DESTDIR=$BPM_ROOT install (RPM uses $RPM_ROOT). With that pattern, user executables get installed into $DESTDIR/usr/bin, man pages in $DESTDIR/usr/share/man, etc --- DESTDIR is prepended to whatever dirs were chosen at ./configure time. When creating software packages, the package-building tool makes an empty tmp dir, populates it with make DESTDIR=... install, then packs up the files that got installer there to make the software package. I hope this explanation is clear. -Bennett |
From: Bennett T. <be...@ra...> - 2005-04-03 23:14:13
|
2005-04-03T22:46:50 Robert Rossi: > I've never used DESTDIR before, how is this different than ./configure > --prefix=/var/tmp/bpmbuild.20581/root ? As a followup, it looks like for cgdb this works: ./configure --prefix=/usr make make prefix=$BPM_ROOT/usr install That's generally a less-desireable pattern, since with some packages the "make install" target causes some rebuilding, and when building the prefix can get wired into binaries and config files and the like. DESTDIR is better when it works. But if getting DESTDIR working right for cgdb turns out to be impractical, then next best would be to simply remove it from the Makefiles completely. -Bennett |
From: Bob R. <bo...@br...> - 2005-04-03 23:59:10
|
On Sun, Apr 03, 2005 at 11:13:50PM +0000, Bennett Todd wrote: > 2005-04-03T22:46:50 Robert Rossi: > > I've never used DESTDIR before, how is this different than ./configure > > --prefix=3D/var/tmp/bpmbuild.20581/root ? >=20 > As a followup, it looks like for cgdb this works: >=20 > ./configure --prefix=3D/usr > make > make prefix=3D$BPM_ROOT/usr install >=20 > That's generally a less-desireable pattern, since with some packages > the "make install" target causes some rebuilding, and when building > the prefix can get wired into binaries and config files and the > like. DESTDIR is better when it works. >=20 > But if getting DESTDIR working right for cgdb turns out to be > impractical, then next best would be to simply remove it from the > Makefiles completely. I'll make an effort to fix this for 0.5.2. If anyone has any suggestions, please let me know. Thanks, Bob Rossi |
From: Robert L. <rob...@se...> - 2005-04-04 07:55:22
|
On Sun, Apr 03, 2005 at 07:58:59PM -0400, Bob Rossi wrote: > I'll make an effort to fix this for 0.5.2. If anyone has any > suggestions, please let me know. please do not remove it, debian very much needs it. i don't really know how ti fix it properly, but from what i see the problem is that the recursive automake install targets in the makefiles depend on wrong stuff. i use destdir extensively during the build process with the following patch, of course the Makefile.in files are generated, so you should rather patch the source file than the resut... --- cgdb-0.5.1.orig/various/adt/src/Makefile.in +++ cgdb-0.5.1/various/adt/src/Makefile.in @@ -537,7 +537,9 @@ =20 info-am: =20 -install-data-am: install-noinst_binPROGRAMS +# debian workaround +#install-data-am: install-noinst_binPROGRAMS +install-data-am:=20 =20 install-exec-am: =20 --- cgdb-0.5.1.orig/various/rlctx/src/Makefile.in +++ cgdb-0.5.1/various/rlctx/src/Makefile.in @@ -408,7 +408,9 @@ =20 info-am: =20 -install-data-am: install-noinst_binPROGRAMS +# debian workaround +#install-data-am: install-noinst_binPROGRAMS +install-data-am:=20 =20 install-exec-am: =20 --- cgdb-0.5.1.orig/tgdb/tgdb-base/src/Makefile.in +++ cgdb-0.5.1/tgdb/tgdb-base/src/Makefile.in @@ -414,7 +414,9 @@ =20 info-am: =20 -install-data-am: install-noinst_binPROGRAMS +# workaround for debian +#install-data-am: install-noinst_binPROGRAMS +install-data-am:=20 =20 install-exec-am: =20 --- cgdb-0.5.1.orig/cgdb/tokenizer/src/Makefile.in +++ cgdb-0.5.1/cgdb/tokenizer/src/Makefile.in @@ -402,7 +402,9 @@ =20 info-am: =20 -install-data-am: install-noinst_binPROGRAMS +# fix for debian=20 +#install-data-am: install-noinst_binPROGRAMS +install-data-am:=20 =20 install-exec-am: =20 --- cgdb-0.5.1.orig/cgdb/lib/kui/src/Makefile.in +++ cgdb-0.5.1/cgdb/lib/kui/src/Makefile.in @@ -406,7 +406,9 @@ =20 info-am: =20 -install-data-am: install-noinst_binPROGRAMS +# dirty fix to work arouind DESTDIR problem +# install-data-am: install-noinst_binPROGRAMS +install-data-am: =20 install-exec-am: =20 --- cgdb-0.5.1.orig/cgdb/lib/wm/src/Makefile.in +++ cgdb-0.5.1/cgdb/lib/wm/src/Makefile.in @@ -402,7 +402,9 @@ =20 info-am: =20 -install-data-am: install-noinst_binPROGRAMS +# dirty fix to work around debian problem +#install-data-am: install-noinst_binPROGRAMS +install-data-am:=20 =20 install-exec-am: cu robert --=20 Robert Lemmen http://www.semistable.com=20 |
From: Bob R. <bo...@br...> - 2005-04-04 12:06:31
|
On Mon, Apr 04, 2005 at 09:55:14AM +0200, Robert Lemmen wrote: > On Sun, Apr 03, 2005 at 07:58:59PM -0400, Bob Rossi wrote: > > I'll make an effort to fix this for 0.5.2. If anyone has any > > suggestions, please let me know. >=20 > please do not remove it, debian very much needs it. i don't really know > how ti fix it properly, but from what i see the problem is that the > recursive automake install targets in the makefiles depend on wrong > stuff. i use destdir extensively during the build process with the > following patch, of course the Makefile.in files are generated, so you > should rather patch the source file than the resut... Thanks Robert. I should have clarified. For 0.5.2 I'll try to get the 'make DESTDIR=3D... install' rule working. I'll make sure not to take anything out. Thanks for the patch, this will be my starting point. :) Bob Rossi |
From: Bob R. <bo...@br...> - 2005-05-21 16:35:24
|
On Mon, Apr 04, 2005 at 09:55:14AM +0200, Robert Lemmen wrote: > On Sun, Apr 03, 2005 at 07:58:59PM -0400, Bob Rossi wrote: > > I'll make an effort to fix this for 0.5.2. If anyone has any > > suggestions, please let me know. >=20 > please do not remove it, debian very much needs it. i don't really know > how ti fix it properly, but from what i see the problem is that the > recursive automake install targets in the makefiles depend on wrong > stuff. i use destdir extensively during the build process with the > following patch, of course the Makefile.in files are generated, so you > should rather patch the source file than the resut... Hi Robert and Bennett, Is there any chance that you could both try to build CGDB for your distro's? I believe I have fixed the problems that you have reported. Robert, hopefully you should be able to build CGDB without any patches to the autoconf stuff. Benett, hopefully you should be able to do 'make DESTDIR=3D... install'. Please let me know as soon as possible. I've found a critical bug in CGDB on platforms other than linux and want to put up another minor release. Thanks, Bob Rossi |
From: Robert L. <rob...@se...> - 2005-05-21 17:15:11
|
On Sat, May 21, 2005 at 12:35:11PM -0400, Bob Rossi wrote: > Is there any chance that you could both try to build CGDB for your > distro's? I believe I have fixed the problems that you have reported. > Robert, hopefully you should be able to build CGDB without any patches > to the autoconf stuff. Benett, hopefully you should be able to do 'make > DESTDIR=3D... install'. >=20 > Please let me know as soon as possible. I've found a critical bug in > CGDB on platforms other than linux and want to put up another minor > release. i checked out the current cvs version, and tried a debian build on it. works like a charm! that's really cool to see. if you are doing a new version i have two more things to throw in: - could you update the config.sub and config.guess files to current versions? it would make it easier to build under weird systems (like GNU/kFreeBSD). you just need to copy over newer files, everything from 2005 should be fine - i wrote a manual page for debian, but it's really bad and should be in the upstream source anyway. perhaps you want to have a quick look, fix the most stupid mistakes and put it into your cvs cu robert =20 --=20 Robert Lemmen http://www.semistable.com=20 |
From: Bob R. <bo...@br...> - 2005-05-21 17:59:28
|
On Sat, May 21, 2005 at 07:15:03PM +0200, Robert Lemmen wrote: > On Sat, May 21, 2005 at 12:35:11PM -0400, Bob Rossi wrote: > > Is there any chance that you could both try to build CGDB for your > > distro's? I believe I have fixed the problems that you have reported. > > Robert, hopefully you should be able to build CGDB without any patches > > to the autoconf stuff. Benett, hopefully you should be able to do 'make > > DESTDIR=3D... install'. > >=20 > > Please let me know as soon as possible. I've found a critical bug in > > CGDB on platforms other than linux and want to put up another minor > > release. >=20 > i checked out the current cvs version, and tried a debian build on it. > works like a charm! that's really cool to see. if you are doing a new > version i have two more things to throw in: Great, I'm glad to hear it. > - could you update the config.sub and config.guess files to current > versions? it would make it easier to build under weird systems > (like GNU/kFreeBSD). you just need to copy over newer files, > everything from 2005 should be fine Weird, I thought I already did that. It's done now. > - i wrote a manual page for debian, but it's really bad and should be in > the upstream source anyway. perhaps you want to have a quick look, fix > the most stupid mistakes and put it into your cvs Let's do this for the next release, since I have little time and need to get this fix out as soon as possible. I know we talked about this before, however, is there any way to generate a man page and a .txt from a single document? This way, there is no duplication of information. If there is a relatively easy way, I'd like to do that. Thanks for the very quick response. If you don't mind, please try doing a debian build again from CVS. This has the latest autoconf/automake changes. If you have good results, I'll probably do a release later today. Thanks, Bob Rossi |