X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Wed, 6 Jul 2016 23:09:50 +0200 (CEST) From: Roland Lutz To: geda-user AT delorie DOT com Subject: Re: [geda-user] Exporting a design In-Reply-To: <201607061549.u66FnPTk017401@envy.delorie.com> Message-ID: References: <201607061549 DOT u66FnPTk017401 AT envy DOT delorie DOT com> User-Agent: Alpine 2.11 (DEB 23 2013-08-11) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323329-1703605461-1467839390=:1450" Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1703605461-1467839390=:1450 Content-Type: TEXT/PLAIN; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8BIT My current approach is to have copies of the symbols and footprints used in the design under SCM together with the schematic(s) and layout. The gafrc file resets the symbol library and adds only this local subdirectory. This is primarily to avoid unexpected changes in the schematic when the library is updated, but it has the nice side effect of having a self-contained directory which can be shared as one repository (or tarball). On Wed, 6 Jul 2016, DJ Delorie wrote: > the .sch files don't include the location of the syms, just the > basename, and the .pcb embeds (and changes!) the footprints. > > So not as straightforward as you'd think. Luckily, I made the logic for resolving basenames readily available as a library while refactoring the netlister. Using the modules xorn.geda.clib and xorn.geda.read, you can just specify the library directories (or library commands, a little-known feature of gEDA) and pass "load_symbols = True" when reading the schematic file to obtain the symbol contents, too. Writing a script based on this which creates an archive containing both the symbols and the original schematic file(s) isn't too hard. I've been doing exactly this as part of the web distribution format I mentioned in my last mail. As having to load extra files in order to be able to render a schematic is undesireable in a web context, I've included something along the lines of the much-discussed library section with the effect that a single schematic file contains all information necessary to render and work on the schematic. You can think of it as a tarball with additional semantic information and the ability to run an XSLT on it. One more reason to finally sit down and complete that branch… --8323329-1703605461-1467839390=:1450--