[opensuse-packaging] Why package builds for Factory but fails for 12.2?
The configure script says it cannot find dar/libdar.hpp but this file is part of libdar-devel and this package in the same in 12.2 and Factory. So possibly the lookup path is somehow broken in 12.2. The link: https://build.opensuse.org/package/show?package=kde3-kdar&project=KDE%3AKDE3 -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 13:46 +0400, Ilya Chernykh wrote:
The configure script says it cannot find dar/libdar.hpp but this file is part of libdar-devel and this package in the same in 12.2 and Factory. So possibly the lookup path is somehow broken in 12.2.
The link: https://build.opensuse.org/package/show?package=kde3-kdar&project=KDE%3AKDE3
Ilya, frankly, for somebody that is 'maintaining' a package you make your life always very easy by just asking why your package does not build anymore. No hints of what you verified (if anything at all) and what you tried. We could as well argue that actually not you, but the big part of readers of this mailing list with a good heart are maintaining KDE3. Now, that was enough of ranting, down to business. Reading config.log of the failed build, reveals: configure:27892: g++ -c -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -fexceptions -DQT_THREAD_SUPPORT -D_REENTRANT conftest.cpp >&5 In file included from /usr/include/dar/my_config.h:32:0, from /usr/include/dar/libdar.hpp:50, from conftest.cpp:79: /usr/include/dar/config.h:89:0: error: unterminated #ifndef configure:27892: $? = 1 So yes,: this can not be built like this (and the result for configure is interpreted as 'header not found'; call it a limitation of configure). Now, as the error suggests, the file /usr/include/dar/config.h is 'corrupt', right? Let's look at the file: The last 4 lines are: #define LIBDAR_STDC_HEADERS 1 #define LIBDAR_VERSION "2.3.10" #ifndef _DARWIN_USE_64_BIT_INODE # define _DARWIN_USE_64_BIT_INODE < - END OF FILE HERE - > So yes, #ifndef is clearly not closed and thus results (correctly) in this compiler error. Now back to you, to actually do the fixing work right? Dominique / DimStar -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Friday 06 July 2012 15:22:25 you wrote:
Now, as the error suggests, the file /usr/include/dar/config.h is 'corrupt', right? Let's look at the file:
The last 4 lines are: #define LIBDAR_STDC_HEADERS 1 #define LIBDAR_VERSION "2.3.10" #ifndef _DARWIN_USE_64_BIT_INODE # define _DARWIN_USE_64_BIT_INODE < - END OF FILE HERE - >
So yes, #ifndef is clearly not closed and thus results (correctly) in this compiler error.
Now back to you, to actually do the fixing work right?
This file is a part of libdar-devel package :-/ I wonder why it is broken only in 12.2 Possibly I have to file a bug report? -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 15:50 +0400, Ilya Chernykh wrote:
This file is a part of libdar-devel package :-/
I wonder why it is broken only in 12.2
Possibly I have to file a bug report?
That sounds like the right thing to do... Generally, it seems to be an issue in this part in Makefile.am in libdar source: install-data-local: mkdir -p $(DESTDIR)$(pkgincludedir) cp ../../config.h $(DESTDIR)$(pkgincludedir) sed -e 's%../config.h%config.h%g' ../my_config.h | sed -e 's% HAVE_CONFIG_H%1%g' > ./my_config.h cp ../gettext.h . for file in $(dist_noinst_DATA) gettext.h my_config.h ; do sed -e 's%#include \"../my_config.h\"%INC_MY_CONFIG_FILE_H%g' "$$file" | sed -e "s%#include \"%#include \"$(pkgincludedir)/%g" | sed -e "s% INC_MY_CONFIG_FILE_H%#include \"$(pkgincludedir)/my_config.h\"%g" > $(DESTDIR)$(pkgincludedir)/"$$file" ; done rm my_config.h gettext.h for file in $(DESTDIR)$(pkgincludedir)/* ; do sed -e 's%HAVE_% LIBDAR_HAS_%g' "$$file" | sed -e 's%PACKAGE%DAR_PACKAGE%g' | sed -e 's% SIZEOF_%LIBDAR_SIZEOF_%g' | sed -e 's%LSTAT_FOLLOWS_SLASHED_SYMLINK% LIBDAR_LSTAT_FOLLOWS_SLASHED_SYMLINK%g' | sed -e 's%VERSION% LIBDAR_VERSION%g' | sed -e 's%MUTEX_WORKS%LIBDAR_MUTEX_WORKS%g' | sed -e 's%OS_BITS%LIBDAR_OS_BITS%g' | sed -e 's%_AVAILABLE% _AVAILABLE_FOR_LIBDAR%g' | sed -e 's%STDC_HEADERS%LIBDAR_STDC_HEADERS%g' | sed -e 's%ENABLE_NLS%DAR_ENABLE_NLS%g' | sed -e 's%HAVE_GETTEXT% DAR_HAS_GETTEXT%g' > "$$file.tmp" && mv "$$file.tmp" "$$file" ; done grep DAR $(DESTDIR)$(pkgincludedir)/config.h | grep -v "#undef"
$(DESTDIR)$(pkgincludedir)/config.h.tmp mv $(DESTDIR)$(pkgincludedir)/config.h.tmp $(DESTDIR)$(pkgincludedir)/config.h chmod 0644 $(DESTDIR)$(pkgincludedir)/* $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig $(INSTALL) -m 0644 libdar.pc $(DESTDIR)$(libdir)/pkgconfig/libdar$(LIBDAR_SUFFIX).pc
notably this line: grep DAR $(DESTDIR)$(pkgincludedir)/config.h | grep -v "#undef"
$(DESTDIR)$(pkgincludedir)/config.h.tmp
=> On 12.2, it contains a DARWIN entry: #ifndef _DARWIN_USE_64_BIT_INODE # define _DARWIN_USE_64_BIT_INODE so DARWIN matches DAR (surprised?) but the #endif of course does not (why should it?) So.. a small assumption here: likely something in the toolchain is different (automake/autoconf?) Even more surprisingly is the fact that dar in openSUSE:Factory has the same broken config.h :) Dominique -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 14:00 +0200, Dimstar / Dominique Leuenberger wrote:
Even more surprisingly is the fact that dar in openSUSE:Factory has the same broken config.h :)
Ok: that one is explainable: you build against Factory/snapshot... just wait until snapshot is being updated to the latest bits and it will fail for Factory as well.. patience is a virtue :) (if you're waiting for it to fail that is). For reference: this is a hacky patch that would likely fix the installation of DAR: Index: dar-2.3.10/src/libdar/Makefile.am =================================================================== --- dar-2.3.10.orig/src/libdar/Makefile.am +++ dar-2.3.10/src/libdar/Makefile.am @@ -54,7 +54,7 @@ install-data-local: for file in $(dist_noinst_DATA) gettext.h my_config.h ; do sed -e 's% #include \"../my_config.h\"%INC_MY_CONFIG_FILE_H%g' "$$file" | sed -e "s %#include \"%#include \"$(pkgincludedir)/%g" | sed -e "s% INC_MY_CONFIG_FILE_H%#include \"$(pkgincludedir)/my_config.h\"%g" > $(DESTDIR)$(pkgincludedir)/"$$file" ; done rm my_config.h gettext.h for file in $(DESTDIR)$(pkgincludedir)/* ; do sed -e 's%HAVE_% LIBDAR_HAS_%g' "$$file" | sed -e 's%PACKAGE%DAR_PACKAGE%g' | sed -e 's% SIZEOF_%LIBDAR_SIZEOF_%g' | sed -e 's%LSTAT_FOLLOWS_SLASHED_SYMLINK% LIBDAR_LSTAT_FOLLOWS_SLASHED_SYMLINK%g' | sed -e 's%VERSION% LIBDAR_VERSION%g' | sed -e 's%MUTEX_WORKS%LIBDAR_MUTEX_WORKS%g' | sed -e 's%OS_BITS%LIBDAR_OS_BITS%g' | sed -e 's%_AVAILABLE% _AVAILABLE_FOR_LIBDAR%g' | sed -e 's%STDC_HEADERS%LIBDAR_STDC_HEADERS%g' | sed -e 's%ENABLE_NLS%DAR_ENABLE_NLS%g' | sed -e 's%HAVE_GETTEXT% DAR_HAS_GETTEXT%g' > "$$file.tmp" && mv "$$file.tmp" "$$file" ; done - grep DAR $(DESTDIR)$(pkgincludedir)/config.h | grep -v "#undef" > $(DESTDIR)$(pkgincludedir)/config.h.tmp + grep DAR $(DESTDIR)$(pkgincludedir)/config.h | grep -v -e "#undef" -e "DARWIN" > $(DESTDIR)$(pkgincludedir)/config.h.tmp mv $(DESTDIR)$(pkgincludedir)/config.h.tmp $(DESTDIR)$(pkgincludedir)/config.h chmod 0644 $(DESTDIR)$(pkgincludedir)/* $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig => it simply strips the DARWIN stuff out as well.. really hacky :) but I'm too lazy to fix it... Ilya: A bug report with reference to this thread is likely the best way to get this fixed. Dominique -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 06 Jul 2012 14:29:59 +0200 Dimstar / Dominique Leuenberger wrote:
Ilya: A bug report with reference to this thread is likely the best way to get this fixed.
I think we need to update dar. Current releases are 2.3.12 and 2.4.7 with a lot of bugfixes. http://dar.linux.free.fr/ http://news.gmane.org/gmane.comp.sysutils.backup.dar.announce -- WBR Kyrill -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 16:54 +0400, Kyrill Detinov wrote:
On Fri, 06 Jul 2012 14:29:59 +0200 Dimstar / Dominique Leuenberger wrote:
Ilya: A bug report with reference to this thread is likely the best way to get this fixed.
I think we need to update dar. Current releases are 2.3.12 and 2.4.7 with a lot of bugfixes. http://dar.linux.free.fr/ http://news.gmane.org/gmane.comp.sysutils.backup.dar.announce
Yet, this very piece of 'art' is still in the same form in git master. Dominique -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 14:29 +0200, Dimstar / Dominique Leuenberger wrote:
=> it simply strips the DARWIN stuff out as well.. really hacky :) but I'm too lazy to fix it...
Ilya: A bug report with reference to this thread is likely the best way to get this fixed.
Ilya filed bug 770228 I submitted that hack patch as a 'possible short term solution' in SR127278 (yeah, I know.. 'short'.. providurium) Greetings, Dominique -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Friday 06 July 2012 17:07:29 you wrote:
=> it simply strips the DARWIN stuff out as well.. really hacky :) but I'm too lazy to fix it...
Ilya: A bug report with reference to this thread is likely the best way to get this fixed.
Ilya filed bug 770228 I submitted that hack patch as a 'possible short term solution' in SR127278 (yeah, I know.. 'short'.. providurium)
This is currently declined in Factory due to some unrelated problem in the spec file: https://build.opensuse.org/request/show/127286 -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 21:58 +0400, Ilya Chernykh wrote:
On Friday 06 July 2012 17:07:29 you wrote:
Ilya filed bug 770228 I submitted that hack patch as a 'possible short term solution' in SR127278 (yeah, I know.. 'short'.. providurium)
This is currently declined in Factory due to some unrelated problem in the spec file: https://build.opensuse.org/request/show/127286
As you have a distant interest in this package: I'd recommend you to just go ahead and submit a fix to get it in... don't wait for others to have time. You're empowered to take actions. Dominique -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hello, On Fri, 06 Jul 2012, Dimstar / Dominique Leuenberger wrote:
Index: dar-2.3.10/src/libdar/Makefile.am =================================================================== +++ dar-2.3.10/src/libdar/Makefile.am @@ -54,7 +54,7 @@ install-data-local: for file in $(dist_noinst_DATA) gettext.h my_config.h ; do sed -e 's% #include \"../my_config.h\"%INC_MY_CONFIG_FILE_H%g' "$$file" | sed -e "s %#include \"%#include \"$(pkgincludedir)/%g" | sed -e "s% INC_MY_CONFIG_FILE_H%#include \"$(pkgincludedir)/my_config.h\"%g" > $(DESTDIR)$(pkgincludedir)/"$$file" ; done rm my_config.h gettext.h for file in $(DESTDIR)$(pkgincludedir)/* ; do sed -e 's%HAVE_% LIBDAR_HAS_%g' "$$file" | sed -e 's%PACKAGE%DAR_PACKAGE%g' | sed -e 's% SIZEOF_%LIBDAR_SIZEOF_%g' | sed -e 's%LSTAT_FOLLOWS_SLASHED_SYMLINK% LIBDAR_LSTAT_FOLLOWS_SLASHED_SYMLINK%g' | sed -e 's%VERSION% LIBDAR_VERSION%g' | sed -e 's%MUTEX_WORKS%LIBDAR_MUTEX_WORKS%g' | sed -e 's%OS_BITS%LIBDAR_OS_BITS%g' | sed -e 's%_AVAILABLE% _AVAILABLE_FOR_LIBDAR%g' | sed -e 's%STDC_HEADERS%LIBDAR_STDC_HEADERS%g' | sed -e 's%ENABLE_NLS%DAR_ENABLE_NLS%g' | sed -e 's%HAVE_GETTEXT% DAR_HAS_GETTEXT%g' > "$$file.tmp" && mv "$$file.tmp" "$$file" ; done - grep DAR $(DESTDIR)$(pkgincludedir)/config.h | grep -v "#undef" > $(DESTDIR)$(pkgincludedir)/config.h.tmp + grep DAR $(DESTDIR)$(pkgincludedir)/config.h | grep -v -e "#undef" -e "DARWIN" > $(DESTDIR)$(pkgincludedir)/config.h.tmp mv $(DESTDIR)$(pkgincludedir)/config.h.tmp $(DESTDIR)$(pkgincludedir)/config.h chmod 0644 $(DESTDIR)$(pkgincludedir)/* $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig
Yuck. Untested: for file in $(DESTDIR)$(pkgincludedir)/* ; do \ sed -e 's%HAVE_%LIBDAR_HAS_%g' \ -e 's%PACKAGE%DAR_PACKAGE%g' \ -e 's%SIZEOF_%LIBDAR_SIZEOF_%g' \ -e 's%LSTAT_FOLLOWS_SLASHED_SYMLINK%LIBDAR_LSTAT_FOLLOWS_SLASHED_SYMLINK%g' \ -e 's%VERSION%LIBDAR_VERSION%g' \ -e 's%MUTEX_WORKS%LIBDAR_MUTEX_WORKS%g' \ -e 's%OS_BITS%LIBDAR_OS_BITS%g' \ -e 's%_AVAILABLE%_AVAILABLE_FOR_LIBDAR%g' \ -e 's%STDC_HEADERS%LIBDAR_STDC_HEADERS%g' \ -e 's%ENABLE_NLS%DAR_ENABLE_NLS%g' \ -e 's%HAVE_GETTEXT%DAR_HAS_GETTEXT%g' \ "$$file" > "$$file.tmp" && mv "$$file.tmp" "$$file" ; \ done grep '\<DAR\>\|\<LIBDAR\>' $(DESTDIR)$(pkgincludedir)/config.h | \ grep -v "#undef" -e > $(DESTDIR)$(pkgincludedir)/config.h.tmp [..] HTH, -dnh -- There are three stages to sex in a person's life: Tri Weekly, Try Weekly, and Try Weakly -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Dnia piątek, 6 lipca 2012 14:00:35 Dimstar / Dominique Leuenberger pisze:
On Fri, 2012-07-06 at 15:50 +0400, Ilya Chernykh wrote:
This file is a part of libdar-devel package :-/
I wonder why it is broken only in 12.2
Possibly I have to file a bug report?
That sounds like the right thing to do...
Generally, it seems to be an issue in this part in Makefile.am in libdar source:
In the future, precede such quotations thus: Warning, deeply disgusting content follows. Sensitive people are advised to skip this part. Or maybe ROT13 it too. Chris
install-data-local: mkdir -p $(DESTDIR)$(pkgincludedir) cp ../../config.h $(DESTDIR)$(pkgincludedir) sed -e 's%../config.h%config.h%g' ../my_config.h | sed -e 's% HAVE_CONFIG_H%1%g' > ./my_config.h cp ../gettext.h . for file in $(dist_noinst_DATA) gettext.h my_config.h ; do sed -e 's%#include \"../my_config.h\"%INC_MY_CONFIG_FILE_H%g' "$$file" | sed -e "s%#include \"%#include \"$(pkgincludedir)/%g" | sed -e "s% INC_MY_CONFIG_FILE_H%#include \"$(pkgincludedir)/my_config.h\"%g" > $(DESTDIR)$(pkgincludedir)/"$$file" ; done
[cut] -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2012-07-06 at 19:00 +0200, Křištof Želechovski wrote:
In the future, precede such quotations thus:
Warning, deeply disgusting content follows. Sensitive people are advised to skip this part.
Or maybe ROT13 it too.
You tell me? I did somebody a favor by glancing for the first time at this package and the Makefile.. and yes, I agree: surely not the nicest way to solve the problem. Dominique -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
participants (5)
-
David Haller
-
Dimstar / Dominique Leuenberger
-
Ilya Chernykh
-
Kyrill Detinov
-
Křištof Želechovski