Dennis.Yxun wrote: > HI Folks: > I'm not a ebuild guru, so I ask here directly. > Here I'm trying to update kicad package to support live svn repos. > But the problem I face here is, kicad seperate different sources base on > different USE flags > I slightly modified the ebuild files, but it simply doesn't work. > Any suggestion or advice, really appreciate! > > Following is offended code, attached file is the ebuild file: > > ESVN_REPO_URI="https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad > !minimal? ( > https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad-library ) > doc? ( > https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad-doc )" > > Dennis
You can't embed USE conditionals inside ESVN_REPO_URI, since USE conditionals like those are only supported in specific variables: *DEPEND, RESTRICT, SRC_URI, PROPERTIES, and PROVIDE. A brief examination of the subversion_fetch() function inside /usr/portage/eclass/subversion.eclass suggests that ESVN_REPO_URI is expected to be single-valued. So, I suspect that you will want to define your own src_unpack() function (overriding subversion_src_unpack) which will call subversion_fetch() as many times as necessary. See the attached code for example. -- Thanks, Zac
src_unpack() { subversion_fetch https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad use minimal || subversion_fetch https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad-library use doc && subversion_fetch https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad-doc }