On 2/24/21 11:29 AM, Sebastiaan Couwenberg wrote:
> On 2/24/21 10:59 AM, Sebastiaan Couwenberg wrote:
>> On 2/23/21 7:25 PM, Sebastiaan Couwenberg wrote:
>>> On 2/23/21 5:51 AM, Sebastiaan Couwenberg wrote:
>>>> On 2/22/21 11:42 PM, Wookey wrote:
>>>>> On 2021-02-22 18:23 +0100, Bas Couwenberg wrote:
>>>>>> Your package FTBFS with PROJ 8.0.0, it hung at `make samples`:
>>>>>>  faketime "" /usr/bin/make samples
>>>>>
>>>>> This is an issue with faketime, which was added to make the package
>>>>> reproducible. For some reason I don't understand it works on the
>>>>> buildds bug hangs under a local sbuild build unless you do that build
>>>>> as root.
>>>>>
>>>>> Fiddling with Rule-Requires-Root doesn't seem to affect this. 
>>>>>
>>>>> So I am pretty certain that this is an artifact of the way you are
>>>>> doing the build test, rather than a genuine issue with Proj v8. 
>>>>>
>>>>> I would like to remove this issue because I have to remember to do
>>>>> builds as root. Knowing why it works OK on the real buildds would be 
>>>>> helpful. 
>>>>
>>>> You can close this issue as notfound if you can confirm that it builds
>>>> successfully with proj from experimental.
>>>>
>>>> I don't use sbuild. I used pdebuild with --use-pdebuild-internal to not
>>>> require the build dependencies outside the chroot for the clean target.
>>>
>>> Logging in to the chroot and building as root doesn't resolve the issue,
>>> sed still hangs.
>>
>> This change helps to not pass an empty string to faketime:
>>
>> --- a/debian/rules        2021-01-04 03:47:31.000000000 +0100
>> +++ b/debian/rules        2021-02-24 10:44:56.455089240 +0100
>> @@ -2,6 +2,8 @@
>>
>>  export DEB_BUILD_MAINT_OPTIONS=hardening=+bindnow future=+lfs
>>  export DH_VERBOSE=1
>> +export FAKETIME_DATE=$(shell dpkg-parsechangelog -S Date)
>> +
>>  %:
>>         dh $@
>>
>> @@ -11,7 +13,7 @@
>>         # We need therion itself to build the samples
>>         $(MAKE) therion
>>         # create HTML documentation for samples
>> -       faketime "$(dpkg-parsechangelog -S Date)" $(MAKE) samples
>> +       faketime "$(FAKETIME_DATE)" $(MAKE) samples
>>  endif
>>         $(MAKE) thbook
>>
>> Now we see:
>>
>>  faketime "Sat, 06 Feb 2021 16:24:25 +0000" /usr/bin/make samples
>>
>> Instead of:
>>
>>  faketime "" /usr/bin/make samples
>>
>> The build still hangs on the sed call to get the PROJ major version, though.
> 
> If awk is used instead of sed like so:
> 
> --- therion-5.5.7ds1.orig/Makefile
> +++ therion-5.5.7ds1/Makefile
> @@ -159,7 +159,7 @@ ifneq ($(filter $(PROJ_VER),$(PROJ_UNSUP
>      $(error unsupported Proj version: $(PROJ_VER))
>  endif
>  PROJ_LIBS ?= $(shell $(CROSS)pkg-config proj --libs)
> -PROJ_MVER ?= $(shell echo $(PROJ_VER) | sed 's/\..*//')
> +PROJ_MVER ?= $(shell echo $(PROJ_VER) | awk -F. '{print $$1}')
>  ifeq ($(shell [ "$(PROJ_MVER)" -gt 5 ] && [ "$(THPLATFORM)" = "WIN32" ]
> && [ -z "$(CROSS)" ]; echo $$?),0)
>    PROJ_LIBS += -lsqlite3
>  endif
> 
> There is some progress, but then the build hangs with 100% CPU on:
> 
>  mkdir -p ./extern/poly2tri/sweep/
> 
> It's proving hard to fix the arch-indep target.

Building only the binary-arch target works.

So there doesn't seem to be a PROJ 8 specific issue.

I'm not sure if closing this issue is appropriate as long as the
arch-indep issues have not been resolved.

Kind Regards,

Bas

-- 
 GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146  50D1 6750 F10A E88D 4AF1

Reply via email to