From owner-freebsd-ports@FreeBSD.ORG Thu Jun 11 07:50:30 2015 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 051F1FF2 for ; Thu, 11 Jun 2015 07:50:30 +0000 (UTC) (envelope-from rhurlin@gwdg.de) Received: from fmailer.gwdg.de (fmailer.gwdg.de [134.76.11.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B66F11055 for ; Thu, 11 Jun 2015 07:50:29 +0000 (UTC) (envelope-from rhurlin@gwdg.de) Received: from um-excht-a01.um.gwdg.de ([134.76.11.221] helo=email.gwdg.de) by mailer.gwdg.de with esmtp (Exim 4.80) (envelope-from ) id 1Z2x1v-0007Zx-Ff; Thu, 11 Jun 2015 09:36:03 +0200 Received: from pc028.nfv (134.76.242.1) by email.gwdg.de (134.76.9.210) with Microsoft SMTP Server (TLS) id 14.3.195.1; Thu, 11 Jun 2015 09:36:02 +0200 Message-ID: <55793A5D.4000903@gwdg.de> Date: Thu, 11 Jun 2015 09:35:57 +0200 From: Rainer Hurling User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Euan Thoms CC: Subject: Re: New port with USES=gmake will not stage References: <72b3-55791e00-1b-6b8b4580@197501805> In-Reply-To: <72b3-55791e00-1b-6b8b4580@197501805> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Level: - X-Virus-Scanned: (clean) by clamav X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Jun 2015 07:50:30 -0000 Hi Euan, Am 11.06.2015 um 07:33 schrieb Euan Thoms: > > On Thursday, June 11, 2015 13:18 SGT, "Chris H" wrote: > >> On Thu, 11 Jun 2015 11:33:03 +0800 "Euan Thoms" wrote >> >>> I'm making a port for OpenSIPS. It builds successfully, but the even with >>> just "make" it installs files to the system instead of to stage (i.e. to >>> /usr/local/... instead of /usr/ports/net/opensips/work/stage/usr/local/...). >>> >>> I am using gmake and gcc since that's what's required for OpenSIPS. >>> >>> I've done a similar port before and the FreeBSD ports macros do the staging >>> for me. However, even when I tell gmake the DESTDIR=${STAGEDIR} in do-build >>> and do-install, a "make" just installs the files to /usr/local/... . >>> >>> I can't find any documentation on how to ensure building uses staging. >>> OpenSIPS doesn't have a configure script AFAIK. It has it's own menuconfig >>> which normally generates a Makefile.conf. The only thing useful in there is >>> PREFIX= , but that is to specify the final destination paths (also used in >>> linking I guess). My port passes the compile flags in MAKE_ARGS instead of >>> using a Makefile.conf file. >> Kind of a tough call w/o any real information -- your Makefile, the source >> location? :) > > Sorry about that. > > Source file is here: http://opensips.org/pub/opensips/1.11.5/opensips-1.11.5-latest_src.tar.gz > > here is my Makefile contents: > > # cat Makefile > # Created by: Euan Thoms > # $FreeBSD$ > I am wondering, if there is a small typo in your PORTNAME. Shouldn't it be 'opensips1-tls' instead of 'opensips1-lts' (lts -> tls)? And why do you use 'opensips1' instead of 'opensips'? PORTVERSION already includes the version number. It seems, this complicates the subsequent setting of WRKSRC etc ... > PORTNAME= opensips1-lts > PORTVERSION= 1.11.5 > CATEGORIES= net > MASTER_SITES= http://opensips.org/pub/opensips/1.11.5/ > DISTNAME= opensips-${PORTVERSION}-latest_src > > MAINTAINER= euan@potensol.com > COMMENT= OpenSIPS (Open SIP Server) is a mature Open Source implementation of a SIP server. > > LICENSE= GPLv2 > LIB_DEPENDS= libxml2.so:${PORTSDIR}/textproc/libxml2 \ > libmemcached.so:${PORTSDIR}/databases/libmemcached > > BUILD_DEPENDS= python:${PORTSDIR}/lang/python > > WRKSRC= ${WRKDIR}/opensips-${PORTVERSION}-tls > > OPTIONS_DEFINE= LDAP MYSQL PGSQL MEMCACHED > OPTIONS_DEFAULT= LDAP PGSQL MEMCACHED > OPTIONS_SUB= yes > > LDAP_DESC= Build with LDAP support > MYSQL_DESC= Build with MySQL support > PGSQL_DESC= Build with PostgreSQL support > MEMCACHED_DESC= Build with memcached support > > USES= gmake shebangfix > USE_GCC= yes > > .include > > #post-patch: > # ${REINPLACE_CMD} -e 's|^#include |#include "Python.h"|' ${WRKSRC}/ > > EXCLUDE_MODULES= aaa_radius b2b_logic cachedb_cassandra cachedb_couchbase \ > cachedb_memcached cachedb_mongodb cachedb_redis carrierroute cpl-c db_berkeley \ > db_http db_mysql db_oracle db_perlvdb db_postgres db_unixodbc dialplan \ > event_rabbitmq h350 regex identity jabber json ldap lua httpd mi_xmlrpc_ng \ > mi_xmlrpc mmgeoip osp perl pi_http presence presence_dialoginfo presence_mwi \ > presence_xml pua pua_bla pua_dialoginfo pua_mi pua_usrloc pua_xmpp python \ > rest_client rls sngtc snmpstats xcap xcap_client xmpp > > INCLUDE_MODULES= aaa_radius b2b_logic cachedb_memcached carrierroute \ > cpl-c db_postgres dialplan event_rabbitmq h350 regex identity jabber json \ > ldap httpd mi_xmlrpc_ng mi_xmlrpc mmgeoip perl pi_http presence \ > presence_dialoginfo presence_mwi presence_xml pua pua_bla pua_dialoginfo \ > pua_mi pua_usrloc pua_xmpp python rest_client rls xcap xcap_client xmpp > > MAKE_ARGS+= PREFIX=${LOCALBASE} > MAKE_ARGS+= exclude_modules="${EXCLUDE_MODULES}" include_modules="${INCLUDE_MODULES}" > > #do-build: > # cd ${WRKSRC} && ${GMAKE} ${MAKE_ARGS} ${ALL_TARGET} > # > #do-install: > # cd ${WRKSRC} && ${GMAKE} ${MAKE_ARGS} ${INSTALL_TARGET} > > .include > #### EOF ############ > > I can't find the make files for stage to drill down and see what's going wrong. Any pointers to the script that "make stage" uses? > >>> >>> -- >>> Regards, Euan Thoms