delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2018/07/23/14:25:37

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Mon, 23 Jul 2018 20:31:34 +0200 (CEST)
X-X-Sender: igor2 AT igor2priv
To: geda-user AT delorie DOT com
X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu"
From: gedau AT igor2 DOT repo DOT hu
Subject: Re: Project file (was Re: [geda-user] gschem multiple pages)
In-Reply-To: <20180723174658.32979841DEBA@turkos.aspodata.se>
Message-ID: <alpine.DEB.2.00.1807232013250.8169@igor2priv>
References: <CAGqyy=bsRdbA8r8q1MTX7pG9ASZiqpsw1-kbj=geTwLoWaz1sA AT mail DOT gmail DOT com> <20180723152807 DOT 13d27cadcd023b63aa3fd9c0 AT gmail DOT com> <CAGqyy=ZC68vU+8vpM4oai5=Mrfq_=QpyojzDwwW-50EV6P4q3A AT mail DOT gmail DOT com> <alpine DOT DEB DOT 2 DOT 00 DOT 1807231832560 DOT 8169 AT igor2priv>
<20180723174658 DOT 32979841DEBA AT turkos DOT aspodata DOT se>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
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


On Mon, 23 Jul 2018, karl AT aspodata DOT se wrote:

> Igor2:
> ...
>> Sounds like the "project file" problem.
> ...
>
> Whats the use for a "project file", isn't it sufficient to use the top
> level sch file ?

If you think in gschem-only, and don't want to save arbitrary per-project 
config settings, then top level sch is probably enough. In a sense a top 
level sch is a geda/gaf-only project file that (as far as I understood) 
does not allowarbitrary config settings but allows referecing the other 
sheets of the project.

However, users seem to need more. Practice showed that even in the simple 
gschem-pcb relation the top level sch was not enough. That's why gsch2pcb 
grew its own project file format. But then that was not read by pcb. So if 
you wanted to configure your footprint lib, you had to configure it in pcb 
and then in gsch2pcb. And of course, the symbol lib for gschem in a third 
file.

Now what if you want a different footprint lib and symbol lib in different 
projects? What if you want to provide a self-contained tarball with local 
libs, without embedding everything? And what if you want to set other, 
project-specific configuration, such as export output jobs (cam) for 
pcb-rnd?

With classic geda it's normally user config and then affects all your 
projects, or it's somehow saved in schematics or board file (e.g. pcb's 
import schematic's sch file names). The project concept is missing, while 
poeple very often want to share and collaborate on projects, not 
individual files.

When I figured this and introduced optional project files in pcb-rnd, as 
an extra it brought some code and UI simplification: we don't have 
different config for pcb-rnd and gsch2pcb-rnd any more and the plan is 
that genxproj would work from the same project file as well. The project 
file format is designed in a way that any tool can easily extend it by its 
own subtree without interfering with other tools.

In theory there could be a separate project per tool file for the same 
project, but I don't think that would be easy for the user. In practice 
users often work this around with Makefiles or shell scripts, but I am not 
sure all tools support all possible configuration setting and 
multi-file-opens on command line. Then if you want to parse such a generic 
language with a project manager just (e.g. genxproj or xgsch2pcb) to 
figure the file names and settings, you'll also have hard time.

Anyway, pcb-rnd, gsch2pcb-rnd already support it, later on genxproj and 
cschem will all support the same format. Whoever wants to join and use 
this format has my full support. Who doesn't like the idea of having 
project files doesn't need to use it: it's all totally optional. And of 
course, any developer is free to invent yet another project file format 
only his tool supports (but I don't think majority of users would love the 
idea of having 3..4 project files instead of 1).

Regards,

Igor2

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019