public inbox for gentoo-portage-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
@ 2009-08-31 10:15 Amit Dor-Shifer
  2009-09-01  7:27 ` Zac Medico
  0 siblings, 1 reply; 8+ messages in thread
From: Amit Dor-Shifer @ 2009-08-31 10:15 UTC (permalink / raw
  To: gentoo-portage-dev

Hi.
When I'm executing ebuild --debug /path/to/my/ebuild.ebuild >& 
/some/file, ebuild keeps dumping QA warnings to /some/file. I think its 
because its grepping for ": warning :" in build.log, and such messages 
are quoted into build.log because of the use of --debug.

If I remove /var/tmp/portage/CATEGORY/PV/temp/, ebuild's execution 
terminates after a reasonable period of time.

I'm wondering whether this is a known issue, and assuming I want to keep 
'keeptemp' in my FEATURES, is there some other workaround?

Amit





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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-08-31 10:15 [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log Amit Dor-Shifer
@ 2009-09-01  7:27 ` Zac Medico
  2009-09-01  9:21   ` Amit Dor-Shifer
  0 siblings, 1 reply; 8+ messages in thread
From: Zac Medico @ 2009-09-01  7:27 UTC (permalink / raw
  To: gentoo-portage-dev

Amit Dor-Shifer wrote:
> Hi.
> When I'm executing ebuild --debug /path/to/my/ebuild.ebuild >&
> /some/file, ebuild keeps dumping QA warnings to /some/file. I think its
> because its grepping for ": warning :" in build.log, and such messages
> are quoted into build.log because of the use of --debug.

Maybe we just need to disable that QA check when --debug is enabled.
What specific QA warnings are you getting?
-- 
Thanks,
Zac



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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-09-01  7:27 ` Zac Medico
@ 2009-09-01  9:21   ` Amit Dor-Shifer
  2009-09-08  1:57     ` Zac Medico
  0 siblings, 1 reply; 8+ messages in thread
From: Amit Dor-Shifer @ 2009-09-01  9:21 UTC (permalink / raw
  To: gentoo-portage-dev

I think it's not that I'm getting any specific warning, but rather that 
the warnings get quoted in build.log in debug mode:

amit0 ~ $ cat 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild
SRC_URI=""
KEYWORDS="amd64"
# Make sure you have the SLOT variable in the ebuild. If you don't plan 
to use it, don't remove it. Put in SLOT="0".
SLOT="0"
# You must (according to the Gentoo ebuild HOWTO) include the IUSE 
variable even if there are no USE flags in use.
IUSE=""

DEPEND=""
RDEPEND="${DEPEND}"

src_install()
{
    diropts -m0777
        dodir /tmp/test-mkdir
}

amit0 ~ $ rm -fr /var/tmp/portage/test/test-mkdir-1.0/temp/
amit0 ~ $ time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild >& 
/tmp/bla install)

real    0m3.456s
user    0m2.527s
sys     0m1.002s
amit0 ~ $ grep -qs ': warning:' 
/var/tmp/portage/test/test-mkdir-1.0/temp/build.log
amit0 ~ $ echo $?
0
amit0 ~ $ grep -m 3 ': warning:' 
/var/tmp/portage/test/test-mkdir-1.0/temp/build.log
+ msgs=(": warning: dereferencing type-punned pointer will break 
strict-aliasing rules$" ": warning: implicit declaration of function " 
": warning: incompatible implicit declaration of built-in function " ": 
warning: is used uninitialized in this function$" ": warning: 
comparisons like X<=Y<=Z do not have their mathematical meaning$" ": 
warning: null argument where non-null required ")
+ [[ -n : warning: dereferencing type-punned pointer will break 
strict-aliasing rules$ ]]
+ m=': warning: dereferencing type-punned pointer will break 
strict-aliasing rules$'
amit0 ~ $ time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild >& 
/tmp/bla install)
# preemting ebuild after a ~30 sec. hang

^C^C
real    0m31.257s
user    0m22.578s
sys     0m8.949s

Amit

Zac Medico wrote:
> Amit Dor-Shifer wrote:
>   
>> Hi.
>> When I'm executing ebuild --debug /path/to/my/ebuild.ebuild >&
>> /some/file, ebuild keeps dumping QA warnings to /some/file. I think its
>> because its grepping for ": warning :" in build.log, and such messages
>> are quoted into build.log because of the use of --debug.
>>     
>
> Maybe we just need to disable that QA check when --debug is enabled.
> What specific QA warnings are you getting?
>   



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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-09-01  9:21   ` Amit Dor-Shifer
@ 2009-09-08  1:57     ` Zac Medico
  2009-09-08  7:38       ` Amit Dor-Shifer
  0 siblings, 1 reply; 8+ messages in thread
From: Zac Medico @ 2009-09-08  1:57 UTC (permalink / raw
  To: gentoo-portage-dev

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

Amit Dor-Shifer wrote:

> amit0 ~ $ grep -m 3 ': warning:'
> /var/tmp/portage/test/test-mkdir-1.0/temp/build.log
> + msgs=(": warning: dereferencing type-punned pointer will break
> strict-aliasing rules$" ": warning: implicit declaration of function "
> ": warning: incompatible implicit declaration of built-in function " ":
> warning: is used uninitialized in this function$" ": warning:
> comparisons like X<=Y<=Z do not have their mathematical meaning$" ":
> warning: null argument where non-null required ")
> + [[ -n : warning: dereferencing type-punned pointer will break
> strict-aliasing rules$ ]]
> + m=': warning: dereferencing type-punned pointer will break
> strict-aliasing rules$'

I think the attached patch should fix that. Could you test if for me?

-- 
Thanks,
Zac

[-- Attachment #2: debug_qa.patch --]
[-- Type: text/x-patch, Size: 939 bytes --]

Index: bin/misc-functions.sh
===================================================================
--- bin/misc-functions.sh	(revision 14213)
+++ bin/misc-functions.sh	(revision 14215)
@@ -408,6 +408,13 @@
 
 	# Evaluate misc gcc warnings
 	if [[ -n ${PORTAGE_LOG_FILE} && -r ${PORTAGE_LOG_FILE} ]] ; then
+		# In debug mode, this variable definition will produce
+		# a false positive if it's shown in the trace.
+		local reset_debug=0
+		if [[ ${-/x/} != $- ]] ; then
+			set +x
+			reset_debug=1
+		fi
 		local m msgs=(
 			": warning: dereferencing type-punned pointer will break strict-aliasing rules$"
 			": warning: dereferencing pointer .* does break strict-aliasing rules$"
@@ -417,6 +424,7 @@
 			": warning: comparisons like X<=Y<=Z do not have their mathematical meaning$"
 			": warning: null argument where non-null required "
 		)
+		[[ $reset_debug = 1 ]] && set -x
 		abort="no"
 		i=0
 		while [[ -n ${msgs[${i}]} ]] ; do

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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-09-08  1:57     ` Zac Medico
@ 2009-09-08  7:38       ` Amit Dor-Shifer
  2009-09-08  8:26         ` Amit Dor-Shifer
  2009-09-08  9:16         ` Zac Medico
  0 siblings, 2 replies; 8+ messages in thread
From: Amit Dor-Shifer @ 2009-09-08  7:38 UTC (permalink / raw
  To: gentoo-portage-dev

Still happens:

amit0 # cd /usr/lib64/portage/
amit0 portage # patch -p1 bin/misc-functions.sh /tmp/debug_qa.patch
amit0 portage # qcheck -v sys-apps/portage
Checking sys-apps/portage-2.1.6.13 ...
 MD5-DIGEST: /usr/lib64/portage/bin/misc-functions.sh (recorded 
'0a1049bec0ee7913c48db02d0942bbca' != actual 
'a2d830254da2f70ee272f986bb82c7cf')
  * 337 out of 338 files are good
amit0 portage # rm -fr /var/tmp/portage/test/test-mkdir-1.0/temp/
amit0 portage # time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
install >& /tmp/bla)

real    0m3.395s
user    0m2.420s
sys     0m1.013s
amit0 portage # time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
install >& /tmp/bla)

real    0m3.681s
user    0m2.617s
sys     0m1.098s
amit0 portage # time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
install >& /tmp/bla)

real    0m4.924s
user    0m3.332s
sys     0m1.607s
amit0 portage # time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
install >& /tmp/bla)

real    0m38.698s
user    0m32.135s
sys     0m7.207s
amit0 portage # time (ebuild --debug 
/usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
install >& /tmp/bla)
^C^C
real    3m48.985s
user    3m32.271s
sys     0m16.436s


Amit



Zac Medico wrote:
> Amit Dor-Shifer wrote:
>
>   
>> amit0 ~ $ grep -m 3 ': warning:'
>> /var/tmp/portage/test/test-mkdir-1.0/temp/build.log
>> + msgs=(": warning: dereferencing type-punned pointer will break
>> strict-aliasing rules$" ": warning: implicit declaration of function "
>> ": warning: incompatible implicit declaration of built-in function " ":
>> warning: is used uninitialized in this function$" ": warning:
>> comparisons like X<=Y<=Z do not have their mathematical meaning$" ":
>> warning: null argument where non-null required ")
>> + [[ -n : warning: dereferencing type-punned pointer will break
>> strict-aliasing rules$ ]]
>> + m=': warning: dereferencing type-punned pointer will break
>> strict-aliasing rules$'
>>     
>
> I think the attached patch should fix that. Could you test if for me?
>
>   



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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-09-08  7:38       ` Amit Dor-Shifer
@ 2009-09-08  8:26         ` Amit Dor-Shifer
  2009-09-08  9:16         ` Zac Medico
  1 sibling, 0 replies; 8+ messages in thread
From: Amit Dor-Shifer @ 2009-09-08  8:26 UTC (permalink / raw
  To: gentoo-portage-dev

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

Attaching /tmp/bla[1234] and build.log.[1234], respective 4 consecutive 
execution.
Amit

Amit Dor-Shifer wrote:
> Still happens:
>
> amit0 # cd /usr/lib64/portage/
> amit0 portage # patch -p1 bin/misc-functions.sh /tmp/debug_qa.patch
> amit0 portage # qcheck -v sys-apps/portage
> Checking sys-apps/portage-2.1.6.13 ...
> MD5-DIGEST: /usr/lib64/portage/bin/misc-functions.sh (recorded 
> '0a1049bec0ee7913c48db02d0942bbca' != actual 
> 'a2d830254da2f70ee272f986bb82c7cf')
>  * 337 out of 338 files are good
> amit0 portage # rm -fr /var/tmp/portage/test/test-mkdir-1.0/temp/
> amit0 portage # time (ebuild --debug 
> /usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
> install >& /tmp/bla)
>
> real    0m3.395s
> user    0m2.420s
> sys     0m1.013s
> amit0 portage # time (ebuild --debug 
> /usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
> install >& /tmp/bla)
>
> real    0m3.681s
> user    0m2.617s
> sys     0m1.098s
> amit0 portage # time (ebuild --debug 
> /usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
> install >& /tmp/bla)
>
> real    0m4.924s
> user    0m3.332s
> sys     0m1.607s
> amit0 portage # time (ebuild --debug 
> /usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
> install >& /tmp/bla)
>
> real    0m38.698s
> user    0m32.135s
> sys     0m7.207s
> amit0 portage # time (ebuild --debug 
> /usr/portage/local/myebuilds/test/test-mkdir/test-mkdir-1.0.ebuild 
> install >& /tmp/bla)
> ^C^C
> real    3m48.985s
> user    3m32.271s
> sys     0m16.436s
>
>
> Amit
>
>
>
> Zac Medico wrote:
>> Amit Dor-Shifer wrote:
>>
>>  
>>> amit0 ~ $ grep -m 3 ': warning:'
>>> /var/tmp/portage/test/test-mkdir-1.0/temp/build.log
>>> + msgs=(": warning: dereferencing type-punned pointer will break
>>> strict-aliasing rules$" ": warning: implicit declaration of function "
>>> ": warning: incompatible implicit declaration of built-in function " ":
>>> warning: is used uninitialized in this function$" ": warning:
>>> comparisons like X<=Y<=Z do not have their mathematical meaning$" ":
>>> warning: null argument where non-null required ")
>>> + [[ -n : warning: dereferencing type-punned pointer will break
>>> strict-aliasing rules$ ]]
>>> + m=': warning: dereferencing type-punned pointer will break
>>> strict-aliasing rules$'
>>>     
>>
>> I think the attached patch should fix that. Could you test if for me?
>>
>>   
>

[-- Attachment #2: ebuild.debug.output_and_logs.tar.gz --]
[-- Type: application/gzip, Size: 1048068 bytes --]

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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-09-08  7:38       ` Amit Dor-Shifer
  2009-09-08  8:26         ` Amit Dor-Shifer
@ 2009-09-08  9:16         ` Zac Medico
  2009-09-08  9:34           ` Amit Dor-Shifer
  1 sibling, 1 reply; 8+ messages in thread
From: Zac Medico @ 2009-09-08  9:16 UTC (permalink / raw
  To: gentoo-portage-dev

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

Amit Dor-Shifer wrote:
> Still happens:

The attached patch applies on top of the other one. I tested it this
time and it seems to be all fixed now.

-- 
Thanks,
Zac

[-- Attachment #2: debug_qa2.patch --]
[-- Type: text/x-patch, Size: 1083 bytes --]

Index: bin/misc-functions.sh
===================================================================
--- bin/misc-functions.sh	(revision 14217)
+++ bin/misc-functions.sh	(revision 14218)
@@ -408,8 +408,8 @@
 
 	# Evaluate misc gcc warnings
 	if [[ -n ${PORTAGE_LOG_FILE} && -r ${PORTAGE_LOG_FILE} ]] ; then
-		# In debug mode, this variable definition will produce
-		# a false positive if it's shown in the trace.
+		# In debug mode, this variable definition and corresponding grep calls
+		# will produce false positives if they're shown in the trace.
 		local reset_debug=0
 		if [[ ${-/x/} != $- ]] ; then
 			set +x
@@ -424,7 +424,6 @@
 			": warning: comparisons like X<=Y<=Z do not have their mathematical meaning$"
 			": warning: null argument where non-null required "
 		)
-		[[ $reset_debug = 1 ]] && set -x
 		abort="no"
 		i=0
 		while [[ -n ${msgs[${i}]} ]] ; do
@@ -440,6 +439,7 @@
 				abort="yes"
 			fi
 		done
+		[[ $reset_debug = 1 ]] && set -x
 		f=$(cat "${PORTAGE_LOG_FILE}" | \
 			"$PORTAGE_BIN_PATH"/check-implicit-pointer-usage.py)
 		if [[ -n ${f} ]] ; then

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

* Re: [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log
  2009-09-08  9:16         ` Zac Medico
@ 2009-09-08  9:34           ` Amit Dor-Shifer
  0 siblings, 0 replies; 8+ messages in thread
From: Amit Dor-Shifer @ 2009-09-08  9:34 UTC (permalink / raw
  To: gentoo-portage-dev

yep. works for me too. 10x!
Amit

Zac Medico wrote:
> Amit Dor-Shifer wrote:
>   
>> Still happens:
>>     
>
> The attached patch applies on top of the other one. I tested it this
> time and it seems to be all fixed now.
>
>   



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

end of thread, other threads:[~2009-09-08  9:34 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-31 10:15 [gentoo-portage-dev] ebuild --debug takes forever when FEATURES contains keeptemp: detects QA warnings in build.log Amit Dor-Shifer
2009-09-01  7:27 ` Zac Medico
2009-09-01  9:21   ` Amit Dor-Shifer
2009-09-08  1:57     ` Zac Medico
2009-09-08  7:38       ` Amit Dor-Shifer
2009-09-08  8:26         ` Amit Dor-Shifer
2009-09-08  9:16         ` Zac Medico
2009-09-08  9:34           ` Amit Dor-Shifer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox