Date: Mon, 11 Apr 2022 19:53:29 +0200 From: =?UTF-8?Q?Fernando_Apestegu=C3=ADa?= <fernape@freebsd.org> To: jbo@insane.engineer Cc: "ports@freebsd.org" <ports@freebsd.org> Subject: Re: Build issue with i386 port Message-ID: <CAGwOe2a=oNCK8jryHMhD11OQHnAw3C34M18aVFF8tSHubYxyGQ@mail.gmail.com> In-Reply-To: <zfL6oy-z-MOKJcsJTWbT4bXx4TCQCLUWVzLxT3DgK6tpyDutGVNFjovLSBm78Q-sDQ0lz8tx4IyODhzrDhSPRR3wXpQJ9yk-7xlDu8wiW6w=@insane.engineer> References: <HHY42GcIqbl9KVSvHSzg73YO7HcDnD_PD4r9wDzBtyH0RPJcBXGdsfdwCYDixZRJRjN3qktWgORg2apUdq9YeGycdg1lLHZcyZ6PTIXTuQY=@insane.engineer> <zfL6oy-z-MOKJcsJTWbT4bXx4TCQCLUWVzLxT3DgK6tpyDutGVNFjovLSBm78Q-sDQ0lz8tx4IyODhzrDhSPRR3wXpQJ9yk-7xlDu8wiW6w=@insane.engineer>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Apr 11, 2022 at 7:24 PM <jbo@insane.engineer> wrote: > > Hello folks, > > I'm fairly new to the porting game so please bear with me. > > A few months ago, I created my first port: sysutils/cpufetch > Back then, I was only testing this on amd64 so ONLY_FOR_ARCHS was set to amd64. > In the meantime, I've spun up some i386 VMs (both FreeBSD 13 and 14) as upstream advertises to also support 32-bit FreeBSD. > In the VMs, if I just clone the upstream repository [1] and run gmake, the software compiles & runs fine. > After those successful tests I've updated the port's Makefile to also include i386 in ONLY_FOR_ARCHS. > > Not long after, I was receiving my first pkg fallout message informing me that the official pkg builds are failing: > > =======================<phase: build >============================ > ===> Building for cpufetch-1.00_1 > gmake[1]: Entering directory '/wrkdirs/usr/ports/sysutils/cpufetch/work/cpufetch-1.00' > Makefile:38: Unsupported arch detected: i386. See https://github.com/Dr-Noob/cpufetch#1-support > Makefile:39: If your architecture is supported but the compilation fails, please open an issue in https://github.com/Dr-Noob/cpufetch/issues > Makefile:40: *** Aborting compilation. Stop. > gmake[1]: Leaving directory '/wrkdirs/usr/ports/sysutils/cpufetch/work/cpufetch-1.00' > ===> Compilation failed unexpectedly. > Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to > the maintainer. > *** Error code 1 > > Upstream's Makefile uses $(shell uname -m) to determine the architecture [2]. My VMs are successfully reporting this as > i386 which upstream's Makefile appears to support explicitly. After all, I'm also able to build this software > on those VMs if just cloning & running gmake manually. > > I'm not really sure where to go from here. As I can build the software in FreeBSD i386 VMs I think > that the issue is related to my port and not upstream. But then again, the build fails "within" upstream's Makefile. > > Could somebody help me out here? When the Makefile checks the output of uname -m, it compares the result with a list of values that includes i686 but not i386. I think a simple REINPLACE_CMD would suffice here. Since I failed to detect this, do you want me to fix it in the repo? I will also send a patch upstream. Cheers. > > [1] https://github.com/dr-noob/cpufetch > [2] https://github.com/Dr-Noob/cpufetch/blob/master/Makefile#L14 > > > Best regards, > ~ Joel Bodenmann >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGwOe2a=oNCK8jryHMhD11OQHnAw3C34M18aVFF8tSHubYxyGQ>