From owner-freebsd-ports@FreeBSD.ORG Wed Jun 25 07:17:17 2008 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 320F91065670 for ; Wed, 25 Jun 2008 07:17:17 +0000 (UTC) (envelope-from itetcu@FreeBSD.org) Received: from it.buh.tecnik93.com (it.buh.tecnik93.com [81.196.204.98]) by mx1.freebsd.org (Postfix) with ESMTP id 7089B8FC1D for ; Wed, 25 Jun 2008 07:17:09 +0000 (UTC) (envelope-from itetcu@FreeBSD.org) Received: from it.buh.tecnik93.com (localhost [127.0.0.1]) by it.buh.tecnik93.com (Postfix) with ESMTP id C2EE62C50D14; Wed, 25 Jun 2008 10:16:55 +0300 (EEST) Date: Wed, 25 Jun 2008 10:16:49 +0300 From: Ion-Mihai Tetcu To: "Josh Rickmar" Message-ID: <20080625101649.15682f81@it.buh.tecnik93.com> In-Reply-To: <4447c1c80806241558p5daa077ck93f1deb1c8cb0a58@mail.gmail.com> References: <4447c1c80806241558p5daa077ck93f1deb1c8cb0a58@mail.gmail.com> X-Mailer: Claws Mail 3.4.0 (GTK+ 2.12.10; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/.Ivmh2U5GJ/PcQdteky+4Ns"; protocol="application/pgp-signature"; micalg=PGP-SHA1 Cc: kde@freebsd.org, freebsd-ports@freebsd.org Subject: Re: KDEmod with Ports X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Jun 2008 07:17:17 -0000 --Sig_/.Ivmh2U5GJ/PcQdteky+4Ns Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 24 Jun 2008 18:58:37 -0400 "Josh Rickmar" wrote: > Hi. Last weekend I switched my desktop computer from Arch Linux to > FreeBSD. On Arch, I used KDEmod [1] (a modular and splitted KDE) in > place of Arch's vanilla KDE. >=20 > I am now wondering if it is possible to port KDEmod to FreeBSD with > Ports. KDEmod is built using a different build system than Arch's > standard PKGBUILD and makepkg tools. Instead of building one package > for each PKGBUILD, a SPLITBUILD is used to create multiple packages. >=20 > This way, instead of having just kdetoys (like in > /usr/ports/x11-clocks/kdetoys3), it is possible to build seperate > packages for amor, kteatime, ktux, kweather... all part of kdetoys, > with the same SPLITBUILD or PKGBUILD. >=20 > (Here's a better explanation of how the build system works [2]. This > is for KDE3, the KDE4 version is (slightly?) different, but the > concept is similar.) >=20 > I have started this thread [3] on the KDEmod forums asking if it is > still possible to port KDEmod to other distros or systems with the new > buildsystem. Funkyou (the original developer of KDEmod) replied > saying that if you can port the kdetoys example, it should be > relatively easy to port the rest. >=20 > I am willing to write Ports for this (if it is possible), however, I > have only basic knowledge of writting PKGBUILDs and no knowledge in > making Ports. Any help would be appreciated. The place where you want to discuss this is kde@ (CC'ed). Making our KDE more modular has been discussed from time to time but there's a big amount of work needed for that and our kde maintainers didn't have the resources to do it. Besides KDE components are pretty interdependent and sorting out what can be split and what not is time consuming (and many of the problems will only be evident at runtime). =46rom what I see "SPLITBUILD" means making install in only a subdir (that holds the app you are interested in) instead of the top dir. But since it's based on PKGBUILD which we don't use you can't port it to FreeBSD (basically you'd need to replace all out ports infrastructure with an other packaging system). What you could do is for the beginning is to try to simulate what their bash scripts do in a Makefile. A first step would be to take an existing kde port like=20 /usr/ports/x11-clocks/kdetoys3, try to understand what /usr/ports/x11-clocks/kdetoys3/Makefile, /usr/ports/x11/kde3/Makefile.kde and /usr/ports/Mk/bsd.kde.mk do, then modify /usr/ports/x11-clocks/kdetoys3/Makefile by adding a few custom targets to it that would install only part of what it's built. Like: install-kodo: cd ${WRKSRC}/kodo && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFI= LE} ${MAKE_ARGS} ${INSTALL_TARGET} Then test it at run time, see what else it depends on, etc. Then start the packaging part (plist, transforming it in one port for each component plus metaportm etc.). --=20 IOnut - Un^d^dregistered ;) FreeBSD "user" "Intellectual Property" is nowhere near as valuable as "Intellect" FreeBSD committer -> itetcu@FreeBSD.org, PGP Key ID 057E9F8B493A297B --Sig_/.Ivmh2U5GJ/PcQdteky+4Ns Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) iEYEARECAAYFAkhh8OcACgkQJ7GIuiH/oeXVBgCgn7gu7uGlPztoZi+Ctclahgpf XWEAnRJNqw7nvuRiPNqhd2WxLKjeNJRA =WEKy -----END PGP SIGNATURE----- --Sig_/.Ivmh2U5GJ/PcQdteky+4Ns--