From owner-freebsd-questions@FreeBSD.ORG Thu Feb 26 22:23:55 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 50C02106564A for ; Thu, 26 Feb 2009 22:23:55 +0000 (UTC) (envelope-from fbsd.questions@rachie.is-a-geek.net) Received: from mail.rachie.is-a-geek.net (rachie.is-a-geek.net [66.230.99.27]) by mx1.freebsd.org (Postfix) with ESMTP id 1D7D18FC12 for ; Thu, 26 Feb 2009 22:23:54 +0000 (UTC) (envelope-from fbsd.questions@rachie.is-a-geek.net) Received: from localhost (mail.lan.rachie.is-a-geek.net [192.168.2.101]) by mail.rachie.is-a-geek.net (Postfix) with ESMTP id 51EB2AFC1FF; Thu, 26 Feb 2009 13:23:54 -0900 (AKST) From: Mel To: freebsd-questions@freebsd.org Date: Thu, 26 Feb 2009 13:23:37 -0900 User-Agent: KMail/1.9.10 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200902261323.37744.fbsd.questions@rachie.is-a-geek.net> Cc: Tim Judd Subject: Re: Heimdal vs MIT KerberosV X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Feb 2009 22:23:55 -0000 On Thursday 26 February 2009 08:48:35 Tim Judd wrote: > It'd be just as easy for me to build > MIT krb5 from ports and let it install into /usr/local. That's fine -- but > I wanted to stretch my knowledge on FreeBSD and the building process and > would like to know what it would take to drop in MIT in exchange for > Heimdal. I'd guess a couple possible ways to do it, but I wanted to ask > the experts before I broke FreeBSD. :) > > Options as I see them: > 1) Take the port directory and replace the contents of > /usr/src/kerberos5 with security/krb5 from ports > 2) Take the tarball from MIT and drop it into /usr/src/kerberos5 > > > If anything were to work, I'd expect #1 to. So what is the expert's > opinion, is it really this easy? Neither will work. The ports build system is a vastly different superset of the src system. Ports core makefiles are in /usr/ports/Mk, and src in /usr/share/mk. Ports take very little from /usr/share/mk, only sys.mk for default flags, bsd.own.mk for default ownerships, the bsd.ports*.mk to point to $PORTSDIR and exclude /etc/src.conf and that's about it. Further more, the base system doesn't use 'configure', patches are applied to make it work for FreeBSD without this hurdle. In short, if you want to learn about the src make system, this isn't a good project. A better project is read the pmake tutorial, the make(1) manpage, comments in /usr/share/mk/*.mk and start writing your own software with this build system. Start with something like: ======== cat < BSDmakefile PROG=hello .include EOF cat <<'EOF' > hello.c #include int main(int argc, char **argv) { printf("Hello world!\n"); return 0; } EOF make ========= Building WITHOUT_KERBEROS and installing MIT-port, is best option to use that implementation. You may need to remove libraries by hand, not sure if make delete-old-libs covers it. -- Mel Problem with today's modular software: they start with the modules and never get to the software part.