From owner-freebsd-ports@freebsd.org Sat Jun 23 20:16:33 2018 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3B8191004A35 for ; Sat, 23 Jun 2018 20:16:33 +0000 (UTC) (envelope-from jbwlists@hilltopgroup.com) Received: from equinox.hilltopgroup.com (equinox.hilltopgroup.com [204.109.63.175]) by mx1.freebsd.org (Postfix) with ESMTP id D5FAF91391 for ; Sat, 23 Jun 2018 20:16:32 +0000 (UTC) (envelope-from jbwlists@hilltopgroup.com) Received: from mail.relativity.hilltop.int (unknown [104.185.205.155]) by equinox.hilltopgroup.com (Postfix) with ESMTP id 4147737BDC3 for ; Sat, 23 Jun 2018 16:16:32 -0400 (EDT) Received: from sovereign.sector005 (equinox.hilltopgroup.com [204.109.63.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: jbwlists@hilltopgroup.com) by mail.relativity.hilltop.int (Postfix) with ESMTPSA id D26DF11FE0 for ; Sat, 23 Jun 2018 16:16:31 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=hilltopgroup.com; s=mail; t=1529784992; bh=CCJLrR+Ba8606dpUkMpfYpAn+a/tL+wunL9iWtmPZwA=; h=Subject:To:References:From:Date:In-Reply-To; b=BjdVw87vOXNytZnTVeWQ3+gtld+KSrHbucvDVbJVTd4r8bresDoBSmYorPpxG7hK+ iIp9IfPZPtD8VPMNyUxLnQDoQFtmQpMpQeKGOF85L8ALmYvB5RfUvoYP57r0h/Wbbf FEb5YAAFiabIDRu5OujA85qto8UXgVFKmwY22W2I= Subject: Re: make[1]: cannot open Makefile for new custom port To: freebsd-ports@freebsd.org References: <8334d290-ba31-111e-6d14-804016b2267a@hilltopgroup.com> <2c3c6fceea8b912119e928db9b2e14ab@yo.waitman.net> From: Joseph Ward Message-ID: Date: Sat, 23 Jun 2018 16:14:32 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <2c3c6fceea8b912119e928db9b2e14ab@yo.waitman.net> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 23 Jun 2018 20:16:33 -0000 On 06/23/2018 15:08, Waitman Gobble wrote: > > On 2018-06-23 11:36, Joseph Ward wrote: > >> Hi all, >> >> I'm attempting to make my first port which is attempting to literally >> unpack a tgz into the correct location.  I'm wanting a port, as I want >> this to be versioned and upgradable on all my systems via pkg (as well >> as to handle dependencies, etc). >> >> 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: >> >> # make makeplist >> ===>  License BSD4CLAUSE accepted by the user >> ===>   nebula-db-0.1 depends on file: /usr/local/sbin/pkg - found >> ===> Fetching all distfiles required by nebula-db-0.1 for building >> ===>  Extracting for nebula-db-0.1 >> => SHA256 Checksum OK for nebula-db-0.1.tar.gz. >> ===>  Patching for nebula-db-0.1 >> ===>  Configuring for nebula-db-0.1 >> ===>  Staging for nebula-db-0.1 >> ===>   Generating temporary packing list >> make[1]: cannot open Makefile. >> >> make[1]: stopped in >> /usr/local/poudriere/ports/nebula/misc/nebula-db/work/nebula-db-0.1 >> *** Error code 2 >> >> Stop. >> make: stopped in /usr/local/poudriere/ports/nebula/misc/nebula-db >> >> I get this when I do "make stage" as well. >> >> I tried tracing what's going on in bsd.port.mk, but I have to admit that >> I got pretty lost. >> >> my Makefile is (using "set list" in vi in case non-printable characters >> matter): >> >> # $FreeBSD$$ >> $ >> PORTNAME=^Inebula-db$ >> DISTVERSION=^I0.1$ >> CATEGORIES=^Imisc$ >> MASTER_SITES=^Ifile:///root/jail_ports/files/$ >> $ >> MAINTAINER=^Ime@hilltopgroup.com$ >> COMMENT=^IJail containing postgres for the nebula system$ >> $ >> LICENSE=^IBSD4CLAUSE$ >> $ >> NO_BUILD=^Iyes$ >> ONLY_FOR_ARCHS=^Iamd64$ >> ONLY_FOR_ARCHS_REASON=^Ipre-built jail on amd64$ >> $ >> NO_WRKSUBDIR=^Iyes$ >> $ >> .include $ >> >> And at that.. I'm stuck.  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 >> jail. >> >> Thanks in advance for any help you can provide, >> >> Joseph > > > > > I haven't tried such a port, but maybe you can make a dummy Makefile. > (?) an idea. > > You would make your port, switch over to the work directory within the > port, and create an empty Makefile.orig > > then create a Makefile that is basically like > > all: donothing > > donothing: >     @echo 'I am here now basically doing nothing' > > then create the patchfile, i think it's make makepatch. back in the > top level of your port path. This will cause it to create the bogus > Makefile out of nothing. > > > > > Also, there are probably a few ports in the tree that only install > files, does not run make, if you can track those down it would show a > working example. > > > > --- > Waitman Gobble > Thank you for getting back to me!  I'm not quite following though; I need another Makefile within the work directory?  I didn't see anything like that in the porter's handbook; did I miss or misunderstand a section?  I actually do have just such a port that I've been using as an example, net/self-service-password.  It doesn't build anything (though unlike mine it does have several dependencies which do build), and when I type "make stage" for it, once the dependencies are present, there is no Makefile, or any other file in the work directory that even has make in the filename (find .|grep -i make).  Thanks, Joseph