Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Jun 2018 22:45:02 +0100
From:      Matthew Seaman <matthew@FreeBSD.org>
To:        freebsd-ports@freebsd.org
Subject:   Re: make[1]: cannot open Makefile for new custom port
Message-ID:  <0668390b-31e9-80e6-6261-590bff577bef@FreeBSD.org>
In-Reply-To: <8334d290-ba31-111e-6d14-804016b2267a@hilltopgroup.com>
References:  <8334d290-ba31-111e-6d14-804016b2267a@hilltopgroup.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--Rj8exGxnurPsGGqvum0A02mDWDYB3JB4I
Content-Type: multipart/mixed; boundary="8kxuvwzNcvMn9OHvFNlL4GCFqRevE1z7u";
 protected-headers="v1"
From: Matthew Seaman <matthew@FreeBSD.org>
To: freebsd-ports@freebsd.org
Message-ID: <0668390b-31e9-80e6-6261-590bff577bef@FreeBSD.org>
Subject: Re: make[1]: cannot open Makefile for new custom port
References: <8334d290-ba31-111e-6d14-804016b2267a@hilltopgroup.com>
In-Reply-To: <8334d290-ba31-111e-6d14-804016b2267a@hilltopgroup.com>

--8kxuvwzNcvMn9OHvFNlL4GCFqRevE1z7u
Content-Type: text/plain; charset=utf-8
Content-Language: en-GB
Content-Transfer-Encoding: quoted-printable

On 23/06/2018 19:36, Joseph Ward wrote:
> I'm attempting to use make makeplist to create the initial pkg-plist as=

> there are a lot of files present, and I'm getting the following error:
>=20
> # make makeplist
> =3D=3D=3D>=C2=A0 License BSD4CLAUSE accepted by the user
> =3D=3D=3D>=C2=A0=C2=A0 nebula-db-0.1 depends on file: /usr/local/sbin/p=
kg - found
> =3D=3D=3D> Fetching all distfiles required by nebula-db-0.1 for buildin=
g
> =3D=3D=3D>=C2=A0 Extracting for nebula-db-0.1
> =3D> SHA256 Checksum OK for nebula-db-0.1.tar.gz.
> =3D=3D=3D>=C2=A0 Patching for nebula-db-0.1
> =3D=3D=3D>=C2=A0 Configuring for nebula-db-0.1
> =3D=3D=3D>=C2=A0 Staging for nebula-db-0.1
> =3D=3D=3D>=C2=A0=C2=A0 Generating temporary packing list
> make[1]: cannot open Makefile.
>=20
> make[1]: stopped in
> /usr/local/poudriere/ports/nebula/misc/nebula-db/work/nebula-db-0.1
> *** Error code 2
>=20
> Stop.
> make: stopped in /usr/local/poudriere/ports/nebula/misc/nebula-db
>=20
>=20
>=20
> I get this when I do "make stage" as well.
>=20
>=20
> I tried tracing what's going on in bsd.port.mk, but I have to admit tha=
t
> I got pretty lost.
>=20
>=20
> my Makefile is (using "set list" in vi in case non-printable characters=

> matter):
>=20
> # $FreeBSD$$
> $
> PORTNAME=3D^Inebula-db$
> DISTVERSION=3D^I0.1$
> CATEGORIES=3D^Imisc$
> MASTER_SITES=3D^Ifile:///root/jail_ports/files/$
> $
> MAINTAINER=3D^Ime@hilltopgroup.com$
> COMMENT=3D^IJail containing postgres for the nebula system$
> $
> LICENSE=3D^IBSD4CLAUSE$
> $
> NO_BUILD=3D^Iyes$
> ONLY_FOR_ARCHS=3D^Iamd64$
> ONLY_FOR_ARCHS_REASON=3D^Ipre-built jail on amd64$
> $
> NO_WRKSUBDIR=3D^Iyes$
> $
> .include <bsd.port.mk>$
>=20
>=20
> And at that.. I'm stuck.=C2=A0 If it would help, I can post the actual
> distfile on a server and provide the link, but it's a tar.gz file
> containing a /usr/local/jail/db directory which is just a populated jai=
l.
>=20
> Thanks in advance for any help you can provide,

You haven't specified an install target in your Makefile, so the ports
is going to try the default action of 'make install ...' in your
extracted $WRKSRC directory.  That won't work without a Makefile; hence
the error you're seeing.  Note that the 'install' target is used to copy
the files into /staging/ -- there are historical reasons why this target
is called 'install' rather than anything to do with the word staging.

There's a NO_INSTALL variable you could use, analogously to NO_BUILD, to
prevent the ports doing anything at all for that step.

However, NO_INSTALL is usually used for meta-ports that only exist for
their dependencies and that don't install any actual files, so it may
not be the right answer for you.

You will need to arrange for all your extracted files to end up in
$STAGEDIR somehow if you want 'makeplist' to work -- a typical way of
doing that is using one or more of the COPYTREE_* macros as part of the
install target. This is the way that many ports which don't do any
actual compilation work.  See www/phpsysinfo as a nice and simple example=
=2E

	Cheers,

	Matthew





--8kxuvwzNcvMn9OHvFNlL4GCFqRevE1z7u--

--Rj8exGxnurPsGGqvum0A02mDWDYB3JB4I
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQKTBAEBCgB9FiEEGfFU7L8RLlBUTj8wAFE/EOCp5OcFAlsuv19fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDE5
RjE1NEVDQkYxMTJFNTA1NDRFM0YzMDAwNTEzRjEwRTBBOUU0RTcACgkQAFE/EOCp
5OdSchAAg8ijKTlP+of9dh3hRWdfNCi6zonl7XRJTvwAqPi/KBeLM3mg2RNS46fF
4QqDCJkt6Rm4sW2KB81yrc6IQ0aTq2dHJmECdFu4LDAbxKp5R0DHFoHeo5shHfHH
tgbHRlZbxM/aavLBrv9WiB8CY/Aezu0IXG50AOSJUp7qjSdmE2eCYBmR+ZW/BDdn
4tTKpLwiLq3sqbwvSUn/Y0qxTDZXo1l6qGrjipXgdU+d1UH3SMaG6cPX1+EAZaDI
uNTYAHwCeAo8aQ9fs28QTJfdQF+zol8RNQgTnyV6Z7aZBvJc/a1AJVJmWNwOni3Z
EeEdDBrniQJELar3spORWrzubVUk3D+8fQqV7O/z1bMw7jYzakWkWcaHvig1bDNt
4LgYHuXNRymltsupg3n7/GopEEHjXi5U99wtd5YDh65S0yVtfGiyL1Ax3KXPGRcD
PntMRhvKaYfXcHZL3PnKni22Yk7fanh31slAxxvLu0uEKMg3uDaAwBSbURWy14eo
C3Sr2E8LE1zcRL2FM+ouFyHK3omFHKksOdOEBJX/W2+4Qh8EwsA6KZAJztVi6XMO
vqEDjNXtndAeepGyb5bIjDA7GvH3+vgqvHibKFRWKdN+sQqbXVBXHKzR6XA7banZ
Ns1f4jl3fnPGNPHNF2WvuHzsp9WqSTTPXKvD+cr038B7U4frIGI=
=cxpp
-----END PGP SIGNATURE-----

--Rj8exGxnurPsGGqvum0A02mDWDYB3JB4I--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0668390b-31e9-80e6-6261-590bff577bef>