It's done. Works beautifully. It was a 1-line change (other than changing the version numbers in _build etc)). I forked sinan - should I do a push request to you? Ed
On Sun, Jun 14, 2009 at 2:16 PM, Eric Merritt <[email protected]> wrote: > > That's exactly the right way. The code is in sin_erl_builder, just > find where it filters on the source and have it do a directory walk > instead. > > On 6/14/09, Edwin Fine <[email protected]> wrote: > > I'll give it a shot. If I can't make significant progress in an hour or > two > > I will throw in the towel - I just don't have a lot of time to > experiment. > > > > My conceptual plan is simple - find where you get the list of files in > "src" > > and expand it to find all matching files under "src" (including relative > > paths); then, where you check the app {modules} against the files you > have, > > do the comparison on the basename of the file (which might have a > relative > > subdir on it). Finally, ensure that the compile step can handle relative > > paths. > > > > Probably simplistic at this point, but I'll learn more as I get deeper > into > > it. > > > > Thanks > > Ed > > > > On Sun, Jun 14, 2009 at 1:37 PM, Eric Merritt <[email protected]> > wrote: > > > >> > >> Well it is always easier for the author. However, if the author always > >> does everything there is never going to be another author ;) > >> > >> I am more then willing to do it and it wont take me that long. > >> However, I really wouldn't mind seeing you dig into it ;) > >> > >> On Sun, Jun 14, 2009 at 12:35 PM, Edwin Fine<[email protected]> wrote: > >> > Well, if it would take you, say, an hour, I'd hand it back over in a > >> flash > >> > :) > >> > It's always easier for the author! > >> > > >> > E > >> > > >> > On Sun, Jun 14, 2009 at 1:26 PM, Eric Merritt <[email protected]> > >> wrote: > >> >> > >> >> Go ahead and give it a shot. I want as many people as possibe exposed > >> >> to the sinan source. The more people working on stuff the better. Let > >> >> me know if you have any problems and I will help you over the hump. > >> >> > >> >> Eric > >> >> > >> >> On Sun, Jun 14, 2009 at 12:20 PM, Edwin Fine<[email protected]> > wrote: > >> >> > Thanks, Eric. > >> >> > > >> >> > I don't think it should worry about name collisions right now, that > >> can > >> >> > come > >> >> > later, same for the ignore file. > >> >> > > >> >> > In the meantime I am going to give it a try also, even if it's just > a > >> >> > temporary hack, unless you are on it already ;) > >> >> > > >> >> > Regards > >> >> > Edwin > >> >> > > >> >> > On Sun, Jun 14, 2009 at 1:05 PM, Eric Merritt <[email protected] > > > >> >> > wrote: > >> >> >> > >> >> >> Edwin, > >> >> >> > >> >> >> I can make the change to have it walk subdirectories without a > >> >> >> problem. I don't actually have any problem with that. It will just > >> >> >> build strait into the ebin directory. It probably wont worry about > >> >> >> possible name collisions there. At least not at first. I can > >> probably > >> >> >> make that change soon. It shouldn't really be a major change. > >> >> >> > >> >> >> I can do the ignore thing too. I may wait just a bit on that. I > want > >> >> >> to refactor how sinan does the actual file building. It may be > worth > >> >> >> waiting on that to integrate the ignore stuff. We shall see. > >> >> >> > >> >> >> No one has asked for this so far ;) > >> >> >> > >> >> >> ERic > >> >> >> > >> >> >> On Sun, Jun 14, 2009 at 12:00 PM, Edwin Fine<[email protected]> > >> wrote: > >> >> >> > Eric, > >> >> >> > > >> >> >> > No packages. It's just a physical separation of modules into > >> >> >> > logically-related groups so as not to clutter the top-level > >> >> >> > directory. > >> >> >> > All > >> >> >> > beam files still go into one ebin directory. It's the same as if > >> the > >> >> >> > files > >> >> >> > were all in one source directory. It would be nice, but not > >> critical, > >> >> >> > if > >> >> >> > any > >> >> >> > change you do could honor a ".sinan_ignore" file in a > subdirectory > >> >> >> > instead > >> >> >> > of having to explicitly state it in _build.cfg. > >> >> >> > > >> >> >> > It would really help me if you did this. I am surprised that > >> >> >> > nobody > >> >> >> > has > >> >> >> > mentioned it before. > >> >> >> > > >> >> >> > Regards, > >> >> >> > Edwin > >> >> >> > > >> >> >> > On Sun, Jun 14, 2009 at 12:45 PM, Eric Merritt < > >> [email protected]> > >> >> >> > wrote: > >> >> >> >> > >> >> >> >> Edwin, > >> >> >> >> > >> >> >> >> It doesn't do this right now. There is a reason for that. In > >> >> >> >> current > >> >> >> >> Erlang semantics multilevel source directories indicate the use > >> >> >> >> of > >> >> >> >> packages. Packages in Erlang are not first class features of > the > >> >> >> >> language and may be depricated at any time (not that that is > all > >> >> >> >> that > >> >> >> >> likely, really). On top of that a lot of the erlang tools just > >> don't > >> >> >> >> support packages, or at least they haven't in the past. I > haven't > >> >> >> >> looked at that lately. So I, explicitly, didn't support > >> directories > >> >> >> >> in > >> >> >> >> the src because I didn't want to support packages in general. > >> >> >> >> > >> >> >> >> Now, it sounds like you aren't actually using packages. You > just > >> >> >> >> want > >> >> >> >> multiple levels of source that will all build into the ebin > >> >> >> >> directory. > >> >> >> >> If that is the case its fairly easy to support that. I could > >> >> >> >> probably > >> >> >> >> put together a patch to do that in short order. However, if you > >> are > >> >> >> >> actually using packages that may be a different story. > >> >> >> >> > >> >> >> >> Eric > >> >> >> >> > >> >> >> >> On Sun, Jun 14, 2009 at 11:37 AM, Edwin<[email protected]> > wrote: > >> >> >> >> > > >> >> >> >> > Often I need to "projectize" an existing Erlang package that > is > >> >> >> >> > well- > >> >> >> >> > formed, other than having a multi-level src directory > structure > >> >> >> >> > (i.e. > >> >> >> >> > subdirectories under src, each having some of the src). I > don't > >> >> >> >> > know > >> >> >> >> > how to get Sinan to do that, and I can't find an answer > >> searching. > >> >> >> >> > Copying all the files from the subdirectories to the src > level > >> is > >> >> >> >> > not > >> >> >> >> > an option, and turning each of the subdirectories into an app > >> >> >> >> > is > >> >> >> >> > just > >> >> >> >> > wrong. > >> >> >> >> > > >> >> >> >> > Doesn't Sinan recurse into subdirectories of the source > >> directory? > >> >> >> >> > Is > >> >> >> >> > there a way/command-line option/_build.cfg setting to force > it > >> to? > >> >> >> >> > How > >> >> >> >> > do I solve this? It's really holding me up. > >> >> >> >> > > > >> >> >> >> > > >> >> >> >> > >> >> >> >> > >> >> >> > > >> >> >> > > >> >> >> > > > >> >> >> > > >> >> >> > >> >> >> > >> >> > > >> >> > > >> >> > > > >> >> > > >> >> > >> >> > >> > > >> > > >> > > > >> > > >> > >> > > >> > > > > > > > > > -- > Sent from my mobile device > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "erlware-dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/erlware-dev?hl=en -~----------~----~----~----~------~----~------~--~---
