On Friday 20 May 2011 19:12:39 Alex Montgomery wrote: > Honestly, I'd rather not make it into one ebuild, since the users would > have to know that one program contained the other. The reason they use the > same .tar.gz is because they handily share code and functionality, but > they're really not the same program. I think you're idea to use the '+' > switch on the IUSE list is a good one, and I've changed "jackmidi" to > "+jackmidi" since I believe that is a feature that most users will want, > and should only be disabled consciously. I've cleaned up the ebuilds and > added the appropriate die flags now. They're attached. Could you look them > over and add them to the overlay please? > > Thanks much, > -- Alex > > On Wed, May 18, 2011 at 4:42 PM, Dominique Michel < > > [email protected]> wrote: > > Le Mon, 16 May 2011 08:49:04 +0100, > > > > Gavin Pryke <[email protected]> a écrit : > > > On Sunday 15 May 2011 19:43:53 Alex Montgomery wrote: > > > .. > > > > > > > Thanks Gavin, I've integrated your suggestions and attached the new > > > > ebuilds. > > > > > > I looked at the ebuilds a bit more. I see that both ebuilds refer to > > > the same tarball? > > > It's just a thought but it may be possible to have just the one > > > ebuild, say for instance jackctlmmc. The cli could be built by > > > default and then allow the GUI to be built as an option with USE=qt4 > > > on emerge. The GUI part could even be enabled by default with > > > IUSE="+qt4" in the ebuild itself as well for the complete package, or > > > turned off as needed. I'm not familiar enough with the software to be > > > sure if this would work though. > > > > > > Best Regards > > > Gav > > > > The GUI doesn't need the cli program, but both can be installed at the > > same time. In consequence, 2 USE flags are needed. USE=cli can be used > > for the command line program. I can look at it, but it will not be > > before the week-end. It will go faster if someone else modify the > > ebuild, test it and post it on the list. > > > > Ciao, > > Dominique > > > > -- > > "We have the heroes we deserve."
The suppose the advantage of having one ebuild is having the patches in the same place rather than duplicates, I made that mistake with zita-resampler. Attaching patch to respect LDFLAGS for Gentoo QA message. If I add the two I'll have to copy the patch twice in FILESDIR? Cheers Gav
# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ EAPI=2 inherit autotools qt4-r2 toolchain-funcs DESCRIPTION="Console/Qt4 programs that listen to MIDI machine control messages (MMC) to drive JACK transport" HOMEPAGE="http://jackctlmmc.sourceforge.net/" SRC_URI="mirror://sourceforge/jackctlmmc/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="+cli lash jackmidi qt4" RDEPEND="media-libs/alsa-lib >=media-sound/jack-audio-connection-kit-0.109.2 lash? ( media-sound/lash ) qt4? ( >=x11-libs/qt-core-4.4 >=x11-libs/qt-gui-4.4 )" DEPEND="${RDEPEND} dev-util/pkgconfig" S=${WORKDIR}/${PN} pkg_setup() { if ! use cli && ! use qt4 ; then eerror "For ${PN} to build," eerror "USE=\"cli\" and/or USE=\"qt4\" flags need to be enabled" die "Invalid USE flags for ${PN} package, enable cli and/or qt4" fi } src_prepare() { epatch "${FILESDIR}/${P}-makefile.patch" eautomake } src_configure() { tc-export CC econf \ $(use_enable cli) \ $(use_enable lash) \ $(use_enable jackmidi) \ $(use_enable qt4 gui) || die if use qt4; then pushd qt eqmake4 popd fi } src_compile() { if use cli; then emake jackctlmmc || die fi if use qt4; then pushd qt qt4-r2_src_compile popd fi } src_install() { emake DESTDIR="${D}" install || die dodoc NEWS README VERSION }
--- jackctlmmc/GNUmakefile.in.original 2011-05-16 17:05:39.374068417 +0100 +++ jackctlmmc/GNUmakefile.in 2011-05-18 19:13:22.873157332 +0100 @@ -37,7 +37,7 @@ $(CC) $(CFLAGS) $(PKG_CFLAGS) -c $< jackctlmmc: $(OBJECTS) - $(CC) $(CFLAGS) $(PKG_CFLAGS) $(LIBS) -o $@ $(OBJECTS) + $(CC) $(LDFLAGS) $(CFLAGS) $(PKG_CFLAGS) -o $@ $(OBJECTS) $(LIBS) qjackmmc: cd qt && $(QMAKE) -o Makefile qjackmmc.pro && $(MAKE)
