Re: How a package will determine the dependencies
On Mon, Nov 05, 2007 at 06:39:01AM -0800, varun_shrivastava wrote: Justin Pryzby-43 wrote: On Fri, Nov 02, 2007 at 08:13:22AM -0700, varun_shrivastava wrote: You could have libinput0-debug provides:libinput0. However I still think the best way is to compile with debugging symbols and move the symbols to separate files in /usr/lib/debug and separate -dbg package which is *just* the debugging syms. thanks for reply do i have to make changes in Makefile or some thing else please can you provide me some links or documents on how to separate debug symbols from main library I already referenced the source: http://lists.debian.org/debian-mentors/2007/11/msg00012.html -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
Justin Pryzby-43 wrote: On Fri, Nov 02, 2007 at 08:13:22AM -0700, varun_shrivastava wrote: You could have libinput0-debug provides:libinput0. However I still think the best way is to compile with debugging symbols and move the symbols to separate files in /usr/lib/debug and separate -dbg package which is *just* the debugging syms. Justin thanks for reply do i have to make changes in Makefile or some thing else please can you provide me some links or documents on how to separate debug symbols from main library thanks -- View this message in context: http://www.nabble.com/How-a-package-will-determine-the-dependencies-tf4732207.html#a13588040 Sent from the debian-mentors mailing list archive at Nabble.com. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
Justin Pryzby-43 wrote: Do you mean it adds stuff within a #ifdef to use SDL? Why is it so huge? yes it adds code not so huge under #ifdef SDL_ENABLE ... #endif Can we provide a virtual package libinput-virtual on which the applications will depend and the virtual package can be libinput0 or libinput0-debug depending on what is installed thanks varun -- View this message in context: http://www.nabble.com/How-a-package-will-determine-the-dependencies-tf4732207.html#a13549612 Sent from the debian-mentors mailing list archive at Nabble.com. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
On Fri, Nov 02, 2007 at 08:13:22AM -0700, varun_shrivastava wrote: Justin Pryzby-43 wrote: Do you mean it adds stuff within a #ifdef to use SDL? Why is it so huge? yes it adds code not so huge under #ifdef SDL_ENABLE ... #endif Can we provide a virtual package libinput-virtual on which the applications will depend and the virtual package can be libinput0 or libinput0-debug depending on what is installed You could have libinput0-debug provides:libinput0. However I still think the best way is to compile with debugging symbols and move the symbols to separate files in /usr/lib/debug and separate -dbg package which is *just* the debugging syms. Justin -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
On Thu, Nov 01, 2007 at 09:42:33PM -0700, varun_shrivastava wrote: hi actually the library uses g_log kind of debugging technique ie some #defines are there, so when log is enabled #defines get replaced by g_log(***), and when its disabled #defines get replaced by (void)0 But i have a bigger problem thats the library has one more option of --enable-sdl=yes/no , I checked the source code and enabling it adds a huge amount of code to standard library. Do you mean it adds stuff within a #ifdef to use SDL? Why is it so huge? Or do you mean it compiles a static copy of SDL? Don't do this; use a {build,}dep on the shared library package instead. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
How a package will determine the dependencies
hi i have a library and want to package it But it has a configuration option as --enable-debug=yes/no So i need to make 2 packages as 1) libinput0 2) libinput0-debug So now if an application uses libinput, how the $(shlibs:Depends) variable get substituted, during application package being built. Because dpkg will automatically determine and substitute the variable according to which one of the above two lib packages are installed, at the time of application package being built. The application must work with any of the above packages should i manually write libinput0 | libinput0-debug in Depends field. Or is there a some other way to do it. thanks and regards varun -- View this message in context: http://www.nabble.com/How-a-package-will-determine-the-dependencies-tf4732207.html#a13531374 Sent from the debian-mentors mailing list archive at Nabble.com. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
On Thu, Nov 01, 2007 at 08:57:19AM -0700, varun_shrivastava wrote: hi i have a library and want to package it But it has a configuration option as --enable-debug=yes/no So i need to make 2 packages as 1) libinput0 2) libinput0-debug I think the recommended way to do this [0] is to build with debugging symbols then move the debugging symbols to a separate file, and associate the dbg files with the normal runtime files. Justin [0] see the developers' references and at least one bug against such. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
On Thu, Nov 01, 2007 at 08:57:19AM -0700, varun_shrivastava wrote: i have a library and want to package it But it has a configuration option as --enable-debug=yes/no So i need to make 2 packages as 1) libinput0 2) libinput0-debug So now if an application uses libinput, how the $(shlibs:Depends) variable get substituted, during application package being built. Because dpkg will automatically determine and substitute the variable according to which one of the above two lib packages are installed, at the time of application package being built. It won't be a problem, because the -dbg package (the standard suffix isn't -debug) doesn't have full copies of the library, just the debugging symbols. The only place where you could run into trouble would be if --enable-debug for this package doesn't just enable -g -O0 and disable stripping, but instead actually modifies the source to be compiled (such as adding fprintf(stderr, DEBUG: Got here\n) throughout the source, or something else similarly irritating). If that's the case, then you've got a real problem, as I can't think of a really good solution to that. I suspect the best solution there is going to be to have the regular library and the -dbg library *conflict* with each other, and have the -dev package depend on only the non-dbg version, so anyone who's building against the library is guaranteed to only have the non-dbg version installed. That is, however, unbelievably ugly, and largely defeats the purpose of having a -dbg version of the library, because the people who are going to want the debugging-enabled library are the people who are linking against the library... I would suggest working out exactly what --enable-debug does to the library build process, and changing anything that isn't symbol related to be run-time rather than build-time configured (so enabling any fprintf(stderr, DEBUG: ) with an environment variable rather than #ifdef), and then the problem reverts to the standard strip symbols, stick symbols in -dbg package method. - Matt -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: How a package will determine the dependencies
hi actually the library uses g_log kind of debugging technique ie some #defines are there, so when log is enabled #defines get replaced by g_log(***), and when its disabled #defines get replaced by (void)0 But i have a bigger problem thats the library has one more option of --enable-sdl=yes/no , I checked the source code and enabling it adds a huge amount of code to standard library. What to do now? thanks for your reply varun -- View this message in context: http://www.nabble.com/How-a-package-will-determine-the-dependencies-tf4732207.html#a13542239 Sent from the debian-mentors mailing list archive at Nabble.com. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]