From owner-freebsd-questions@FreeBSD.ORG Wed Jan 7 09:16:08 2004 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5080D16A4CE for ; Wed, 7 Jan 2004 09:16:08 -0800 (PST) Received: from smtp.aspadmin.com (smtp.aspadmin.com [216.98.128.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 99F9443D92 for ; Wed, 7 Jan 2004 09:14:49 -0800 (PST) (envelope-from jwilliams@courtesymortgage.com) Received: from jwilliams.courtesymortgage.com (unknown [209.126.131.11]) by smtp.aspadmin.com (Postfix) with ESMTP id 40E25214658 for ; Wed, 7 Jan 2004 09:13:45 -0800 (PST) Message-Id: <5.2.1.1.0.20040107090523.00aa3b38@pop.courtesymortgage.com> X-Sender: jwilliams@pop.courtesymortgage.com X-Mailer: QUALCOMM Windows Eudora Version 5.2.1 Date: Wed, 07 Jan 2004 09:13:24 -0800 To: freebsd-questions@freebsd.org From: Jason Williams Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Subject: Question on port usage X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Jan 2004 17:16:08 -0000 Good morning everyone. I wanted to ask a question about ports, the makefile and customizing port installation. I was reading through 'Absolute BSD' last night and was reading up on the section on port's. I was unaware that with ports, you can actually edit the makefile to add certain options at installation time. Sorta like ./configure when you install programs from source correct? I have been working with cyrus-imapd as im going to roll out a mail server here pretty soon. Looking at the make file, I see this: .if defined(WITH_BDB_VER) USE_BDB_VER= ${WITH_BDB_VER} .else USE_BDB_VER= 3 .endif .if ${USE_BDB_VER} == 41 LIB_DEPENDS+= db41.1:${PORTSDIR}/databases/db41 .elif ${USE_BDB_VER} == 4 LIB_DEPENDS+= db4.0:${PORTSDIR}/databases/db4 .elif ${USE_BDB_VER} == 3 LIB_DEPENDS+= db3.3:${PORTSDIR}/databases/db3 .else BROKEN= "WITH_BDB_VER must be 3, 4 or 41" .endif CONFIGURE_ARGS+=--with-bdb-incdir=${LOCALBASE}/include/db${USE_BDB_VER} \ --with-bdb=db${USE_BDB_VER} .if defined(WITH_SKIPLIST) WITH_SKIPLIST_MBOX= YES WITH_SKIPLIST_SEEN= YES .endif .if defined(WITH_SKIPLIST_MBOX) CONFIGURE_ARGS+=--with-mboxlist-db=skiplist .endif .if defined(WITH_SKIPLIST_SEEN) CONFIGURE_ARGS+=--with-seen-db=skiplist .endif .if defined(WITH_MURDER) (There is more, but I cut it short to get to the point) With what is listed above, you can actually specify what and how you want the software built? For instance: make WITH_BDB_VER=41 WITH_SKIPLIST=YES WITH_MURDER install clean Would setup cyrus-imapd with Berkeley db41, with_skiplist and with murder correct? Or not? Lastly, since there are quite a few options that you can use to compile with most programs, is it possible to specify them somehow at the command line when installing through the ports tree? I'm pretty new to ports, but I really like the idea behind it. Just looking for some clarification here. I appreciate the help. Jason