Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Jun 2018 12:08:56 -0700
From:      Waitman Gobble <uzimac@da3m0n8t3r.com>
To:        freebsd-ports@freebsd.org
Subject:   Re: make[1]: cannot open Makefile for new custom port
Message-ID:  <2c3c6fceea8b912119e928db9b2e14ab@yo.waitman.net>
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

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 <bsd.port.mk>$
> 
> 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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2c3c6fceea8b912119e928db9b2e14ab>