From nobody Fri Jul 14 16:20:35 2023 X-Original-To: ports@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4R2cCT5W3kz4nJPM for ; Fri, 14 Jul 2023 16:20:37 +0000 (UTC) (envelope-from danilo@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4R2cCT53P1z3pgq; Fri, 14 Jul 2023 16:20:37 +0000 (UTC) (envelope-from danilo@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1689351637; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=mvBA424+Sc0bgTNGzjoqBSlKdbX/04Rpn9nQ9JwdPZg=; b=aV1wcZ1L8F88IhsnID2rdr45KuAXvePIQyoRXtBJSTNo8Pg3ffkOvjW4WfgXbqHKLNPvug h7OD0sCb3kNh7sdU1sIIgXCcodUV4WOg81rT8rGoepZ8w7CisJhgND6QhS1Hbt7TfGjZ5V RGToIRVvq9n0exgSD+k8PPWZxLdj6RQyiOaVVOKd9orBPfpRBOkue/ouv7ExZzQfK2w9Ie mHR3qSuyzVFDwIM9iXok0oFIis3xfzSUJC46R6gK4HieRzl54yygXDz9RB9bt2aZGQKcqu DH5HZu/TwfhJFQPOiPTGPKkKOr/jsI9t9Pu/rTogfIqC6U7+vgICw8nJU48prQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1689351637; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=mvBA424+Sc0bgTNGzjoqBSlKdbX/04Rpn9nQ9JwdPZg=; b=ioHb3MgFcLd55iIyC7UkapKawzhkvL5pvKNveDG8lIxbN5ook5spFGnyY+fSGTDD62MZMf x0aX62MvDvWdLn5cKUarx5qss1Mose698MiKrZBoGmbBJlOaeRaBrJ2OM6yFTFViT7DBob qW9wkFp9xC4W1MgDrn7rTHwFDhAyFCBscU7opn99F8UmyHjPNmvh+lDuB04YqiVn/CLQoH BV2DyjiWyo+UDAwbbmaPk3gXnehoMdscXEmxhhcLaKlBNsesSFZB6c/4hhdQuHJT2CJ72r 3/uOHLfUwU5a0lzVEKBaN6/UNhHSaJJNHr5pANQDoHxmcM0kAJDQ0224KjS/Fg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1689351637; a=rsa-sha256; cv=none; b=rTtZn6H3AzsEqmYDPXjXPnKy7vokGaNuFp6yZLrUl9ZimrZryJOtUMSx5Ur/30EZYA2Vby Sj7l7Evmjbe+ngFOA0hWkyv/X7r0wHGY66XTHN6KWTEppXpQJMvmrFirRGYkRQGRNqSe+t qgu+rEcS6RljCiIZ3xJU98WCtw3ffZ2CCeKSK2ZeHW9DpD9DaHJfMjNuNbgz+VUVV3vqmS X5xiblSdIttjdKkPT1HPk8urlY98pfiOpuKB2fPWGC/1Q01nHQRf4XfZyLZ8HgmNc4Wts2 YSv6/Pc9Gi0rjO2fSgK66/qKw2aJlCyHznqD7iitCCYVrsSnXoINvlNI79zdVA== Received: from [192.168.5.122] (unknown [37.228.206.65]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: danilo) by smtp.freebsd.org (Postfix) with ESMTPSA id 4R2cCT0rV2zwJH; Fri, 14 Jul 2023 16:20:36 +0000 (UTC) (envelope-from danilo@FreeBSD.org) Content-Type: multipart/alternative; boundary="------------Ix3YBJbM8I0Z4J69AwcDlYKa" Message-ID: Date: Fri, 14 Jul 2023 17:20:35 +0100 List-Id: Porting software to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-ports List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-ports@freebsd.org X-BeenThere: freebsd-ports@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: graphics/xpaint updated to latest version Content-Language: en-US To: Nuno Teixeira Cc: ports@freebsd.org References: <88100d98-8d22-bb31-9181-dbbfb7c1a1f4@FreeBSD.org> From: Danilo Egea Gondolfo In-Reply-To: X-ThisMailContainsUnwantedMimeParts: N This is a multi-part message in MIME format. --------------Ix3YBJbM8I0Z4J69AwcDlYKa Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 14/07/2023 13:40, Nuno Teixeira wrote: > Oldest version used a patch: > ### > --- Makefile.in.orig    2021-08-14 14:31:15 UTC > +++ Makefile.in > @@ -1203,16 +1203,15 @@ messages.h: preproc >  messages.h: preproc >         ./preproc > messages.h > > -XPaint.ad: app-defaults > -       $(CC) $(CFLAGS) substads.c -o substads > -       cd app-defaults ; \ > +XPaint.ad: substads app-defaults > +       (cd app-defaults ; \ >         ../substads -appdefs \ >                     XPAINT_VERSION $(PACKAGE_VERSION) \ >                     XPAINT_SHAREDIR $(SHAREDIR) \ >                     XPAINT_PRINT_COMMAND "$(PRINT_CMD)" \ >                     XPAINT_PRINTER_LIST "$(PRINTER_LIST)" \ >                     XPAINT_POSTSCRIPT_VIEWER "$(POSTSCRIPT_VIEWER)" \ > -                   XPAINT_EXTERN_VIEWER "$(EXTERN_VIEWER)" > +                   XPAINT_EXTERN_VIEWER "$(EXTERN_VIEWER)") >         cp -p app-defaults/out/XPaint XPaint.ad > >  XPaint.ad.h: substads XPaint.ad > ### > > that I'm not using here. > Maybe this is related? Could you test it? > > Thanks > > Danilo Egea Gondolfo escreveu no dia sexta, > 14/07/2023 à(s) 13:30: > > On 14/07/2023 12:42, Nuno Teixeira wrote: > >> Hello Danilo, >> >> My tests don't show that under poudriere with ALLOW_MAKE_JOBS=yes >> on 2 parallel jobs. >> >> Should we wait for build packagers to see its results? >> >> Thanks, >> >> Danilo Egea Gondolfo escreveu no dia sexta, >> 14/07/2023 à(s) 12:27: >> >> On 14/07/2023 11:12, Nuno Teixeira wrote: >> >>> Hello all, >>> >>> xpaint has been updated to lastest version. >>> Try out new features! >>> >>> I'm working on this update for more than 1 year but only >>> yesterday I did have the courage and nerves to build *all* >>> releases until 3.1.4 as a way to understand the best way to >>> "hack" configures and Makefiles and stuff. >>> >>> Please give it a try and tell me if anything needs to be >>> fixed, etc. >>> >>> Cheers! >>> >>> https://cgit.freebsd.org/ports/commit/?id=973a707c70478448af77004a07eab1f85c2f6757 >>> >>> -- >>> Nuno Teixeira >>> FreeBSD Committer (ports) >> >> Hi Eduardo, >> >> xpaint seems to not be multi-jobs-safe. The build will >> eventually fail with this: >> >> cd app-defaults ; \ >> ../substads -appdefs \ >>             XPAINT_VERSION 3.1.4 \ >>             XPAINT_SHAREDIR /usr/local/share/xpaint \ >>             XPAINT_PRINT_COMMAND "lp -d" \ >>             XPAINT_PRINTER_LIST "lpstat -p | cut -d' ' -f 2" \ >>             XPAINT_POSTSCRIPT_VIEWER "evince" \ >>             XPAINT_EXTERN_VIEWER "display" >> /bin/sh: ../substads: Text file busy >> gmake[1]: *** [Makefile:1205: XPaint.ad] Error 126 >> gmake[1]: *** Waiting for unfinished jobs.... >> gmake[1]: Leaving directory >> '/usr/ports/graphics/xpaint/work/xpaint-3.1.4' >> >> You might want to use MAKE_JOBS_UNSAFE=yes. >> >> >> >> >> -- >> Nuno Teixeira >> FreeBSD Committer (ports) > > That's because it's a race condition :) > > See: > > [danilo@capeta /usr/ports/graphics/xpaint]$ while : ; do make > clean >/dev/null ; make >/dev/null 2>&1 ; if [ $? -ne 0 ] ; then > echo 'Failed' ; else echo 'Worked' ; fi ; done > Worked > Worked > Failed > Worked > Worked > Worked > Worked > Worked > Worked > Worked > Worked > Worked > Failed > Worked > Worked > Worked > Worked > Worked > Worked > Worked > Failed > Failed > Worked > Worked > Worked > Worked > Worked > > > > -- > Nuno Teixeira > FreeBSD Committer (ports) Yeah apparently that addresses the problem. But as you are using USES=autoreconf, you need to patch Makefile.am actually. This change seems to be enough: -XPaint.ad: app-defaults +XPaint.ad: substads app-defaults --------------Ix3YBJbM8I0Z4J69AwcDlYKa Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

On 14/07/2023 13:40, Nuno Teixeira wrote:

Oldest version used a patch:
###
--- Makefile.in.orig    2021-08-14 14:31:15 UTC
+++ Makefile.in
@@ -1203,16 +1203,15 @@ messages.h: preproc
 messages.h: preproc
        ./preproc > messages.h

-XPaint.ad: app-defaults
-       $(CC) $(CFLAGS) substads.c -o substads
-       cd app-defaults ; \
+XPaint.ad: substads app-defaults
+       (cd app-defaults ; \
        ../substads -appdefs \
                    XPAINT_VERSION $(PACKAGE_VERSION) \
                    XPAINT_SHAREDIR $(SHAREDIR) \
                    XPAINT_PRINT_COMMAND "$(PRINT_CMD)" \
                    XPAINT_PRINTER_LIST "$(PRINTER_LIST)" \
                    XPAINT_POSTSCRIPT_VIEWER "$(POSTSCRIPT_VIEWER)" \
-                   XPAINT_EXTERN_VIEWER "$(EXTERN_VIEWER)"
+                   XPAINT_EXTERN_VIEWER "$(EXTERN_VIEWER)")
        cp -p app-defaults/out/XPaint XPaint.ad

 XPaint.ad.h: substads XPaint.ad
###

that I'm not using here.
Maybe this is related? Could you test it?

Thanks

Danilo Egea Gondolfo <danilo@freebsd.org> escreveu no dia sexta, 14/07/2023 à(s) 13:30:

On 14/07/2023 12:42, Nuno Teixeira wrote:

Hello Danilo,

My tests don't show that under poudriere with ALLOW_MAKE_JOBS=yes on 2 parallel jobs.

Should we wait for build packagers to see its results?

Thanks,

Danilo Egea Gondolfo <danilo@freebsd.org> escreveu no dia sexta, 14/07/2023 à(s) 12:27:

On 14/07/2023 11:12, Nuno Teixeira wrote:

Hello all,

xpaint has been updated to lastest version.
Try out new features!

I'm working on this update for more than 1 year but only yesterday I did have the courage and nerves to build *all* releases until 3.1.4 as a way to understand the best way to "hack" configures and Makefiles and stuff.

Please give it a try and tell me if anything needs to be fixed, etc.

Cheers!


--
Nuno Teixeira
FreeBSD Committer (ports)

Hi Eduardo,

xpaint seems to not be multi-jobs-safe. The build will eventually fail with this:

cd app-defaults ; \
../substads -appdefs \
            XPAINT_VERSION 3.1.4 \
            XPAINT_SHAREDIR /usr/local/share/xpaint \
            XPAINT_PRINT_COMMAND "lp -d" \
            XPAINT_PRINTER_LIST "lpstat -p | cut -d' ' -f 2" \
            XPAINT_POSTSCRIPT_VIEWER "evince" \
            XPAINT_EXTERN_VIEWER "display"
/bin/sh: ../substads: Text file busy
gmake[1]: *** [Makefile:1205: XPaint.ad] Error 126
gmake[1]: *** Waiting for unfinished jobs....
gmake[1]: Leaving directory '/usr/ports/graphics/xpaint/work/xpaint-3.1.4'

You might want to use MAKE_JOBS_UNSAFE=yes.




--
Nuno Teixeira
FreeBSD Committer (ports)

That's because it's a race condition :)

See:

[danilo@capeta /usr/ports/graphics/xpaint]$ while : ; do make clean >/dev/null ; make >/dev/null 2>&1 ; if [ $? -ne 0 ] ; then echo 'Failed' ; else echo 'Worked' ; fi ; done
Worked
Worked
Failed
Worked
Worked
Worked
Worked
Worked
Worked
Worked
Worked
Worked
Failed
Worked
Worked
Worked
Worked
Worked
Worked
Worked
Failed
Failed
Worked
Worked
Worked
Worked
Worked



--
Nuno Teixeira
FreeBSD Committer (ports)

Yeah apparently that addresses the problem. But as you are using USES=autoreconf, you need to patch Makefile.am actually.

This change seems to be enough:

-XPaint.ad: app-defaults
+XPaint.ad: substads app-defaults

--------------Ix3YBJbM8I0Z4J69AwcDlYKa--