[Cgdb-devel] [ cgdb-Bugs-870701 ] Makefile paths
Brought to you by:
bobbybrasko,
crouchingturbo
From: SourceForge.net <no...@so...> - 2004-01-05 04:48:42
|
Bugs item #870701, was opened at 2004-01-04 23:48 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=534974&aid=870701&group_id=72581 Category: CGDB Group: None Status: Open Resolution: None Priority: 5 Submitted By: Yaakov Selkowitz (yselkowitz) Assigned to: Nobody/Anonymous (nobody) Summary: Makefile paths Initial Comment: I am attempting to build and package CGDB for Cygwin. The program builds and runs seemingly fine (I haven't done extensive testing though). However upon trying to package it I ran into a few problems. Cygwin packaging is usually done through a build script, which makes a .build directory where everything that is created through the configure and make process is put, keeping the original source dir clean. However the Makefiles expect that the program is being built in the source directories, and hence are not found. The problem manifests itself when building the executables by linking to the libraries which were previously built. These should be linked with relative paths, allowing for the external build dir (this is how I've seen many programs work). For example, cgdb-0.4.0/cgdb/src/Makefile.in should be patched so: cgdb_LDFLAGS = --L$(top_srcdir)/various/util/src +-L../../various/util/src --L$(top_srcdir)/various/adt/src +-L../../various/adt/src --L$(top_srcdir)/various/input/src +-L../../various/input/src --L$(top_srcdir)/various/rlctx/src +-L../../various/rlctx/src --L$(top_srcdir)/tgdb/tgdb-base/src +-L../../tgdb/tgdb-base/src --L$(top_srcdir)/tgdb/annotate-two/src +-L../../tgdb/annotate-two/src --L$(top_srcdir)/cgdb/tokenizer/src +-L../tokenizer/src --L$(top_srcdir)/tgdb/gdbmi/src +-L../../tgdb/gdbmi/src And so on for similar cases in *that* file and every other Makefile.in that links to the libraries created earlier in the make process. Also, the build script installs to a .inst directory from which the bin tarball is made, using 'make install DESTDIR=${instdir}' (instdir is defined in the script). When doing so I got the following result: /home/Yaakov/devel/testing/cgdb/cgdb-0.4.0/progs/getch_driver.exe /home/Yaakov/devel/testing/cgdb/cgdb-0.4.0/progs/input_driver.exe /home/Yaakov/devel/testing/cgdb/cgdb-0.4.0/progs/rlctx_driver.exe /home/Yaakov/devel/testing/cgdb/cgdb-0.4.0/progs/tgdb_driver.exe /home/Yaakov/devel/testing/cgdb/cgdb-0.4.0/progs/tokenizer_driver.exe /usr/bin/cgdb.exe /usr/share/doc/cgdb-0.4.0/AUTHORS /usr/share/doc/cgdb-0.4.0/ChangeLog /usr/share/doc/cgdb-0.4.0/COPYING /usr/share/doc/cgdb-0.4.0/INSTALL /usr/share/doc/cgdb-0.4.0/NEWS /usr/share/doc/cgdb-0.4.0/README I don't understand why the progs/*_driver.exe files are supposed to go in the source directory. Are these needed by CGDB to run? Are they meant as examples? In either case this is something that needs to be fixed in the Makefile.in's as well. If there is anything I can do to help you fix these issues I will try to assist. Thank you for your work on this project. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=534974&aid=870701&group_id=72581 |