Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-30 Thread Dan McMahill
Traylor Roger wrote:
 Dan,
 
 As you requested..


 nbuster_3.sch:footprint=TSSOP-65P-640L1-14N

This is the culprit

 As you can see, many of the footprints have a - but these are
 from John Luciani's footprint library.  These have not caused 
 any problems up to this point.

With older versions of gsch2pcb, what happens is each of the footprints 
gets turned into a like like:

PKG_TSSOP-65P-640L1-14N(foo, bar, baz)

now the whole thing is fed to m4.  Some of the footprints will expand to 
valid footprints, some will be left as PKG_name(arg1, arg2, arg3), and 
some like the TSSOP one will be partially expanded.

Then gsch2pcb looks for file elements for the unexpanded footprints and 
optionally replaces the m4 generated ones with file ones.

Unfortunately, this is an abuse[1] of a *private* part of pcb so it is 
really no wonder that it causes problems from time to time.

Newer versions of gsch2pcb (can't recall exactly when newer was) have 
a option that prevents ever running m4.

In this particular case, PKG_TSSOP is an internal macro that expects 
several arguments and produces a TSSOP footprint.  When you feed 
PKG_TSSOP-65P-640L1-14N(foo, bar, baz) to m4, it tries to expand only 
the PKG_TSSOP part but there are no arguments.  Now the internal code 
there flakes out.

-Dan

[1] Nothing external to pcb is ever supposed to invoke m4.  The way the 
m4 libraries have historically been implemented in pcb, there are 
controls against garbage in like this.  The pcblib.contents file 
constrains what is ever passed to m4 *and* m4 is only fed 1 package 
macro at a time.  Contrast this to gsch2pcb which freely feeds any sort 
of input to m4 and it feeds many at once.  Note that pcb has *never* 
claimed that the m4 stuff should be directly called by some external 
program.  Even pcb doesn't call it directly like that.

In fact in the last couple of pcb releases, m4 doesn't need to be called 
at runtime by pcb.  It is used at build time to generate all of the 
footprints which are defined via m4 macros.  Before anyone says 
otherwise though, the m4 libraries are not deprecated though.  All of 
the footprints build and many (but not all) are fairly decent.  For 
example, that's where to go if you want 3-tier footprints based on IPC 
recommendations for things like surface mount R's and C's.

So, how to fix the situation?  Someone needs to endow pcb with an action 
that instantiates a footprint.  Then gsch2pcb should generate an action 
file for pcb to execute to do the instantiations.  pcb should provide 
this as a documented public interface and gsch2pcb should stop abusing a 
private interface.  At a minimum, gsch2pcb should simply stop trying to 
ever call m4.





___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-30 Thread DJ Delorie

 As you can see, many of the footprints have a - but these are
 from John Luciani's footprint library.  These have not caused 
 any problems up to this point.

John disables m4 completely in his setup, so he won't have that
problem.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-30 Thread Traylor Roger
Dan,

As you requested..
nbuster_1.sch:footprint=0805
nbuster_1.sch:footprint=cap-elec-Panasonic-FK--D4.00-H5.80-mm
nbuster_1.sch:footprint=elect_mic_horn_EM6022P-42BC10.fp
nbuster_1.sch:footprint=SOT-23_Transistor.fp
nbuster_1.sch:footprint=tssop-8.fp
nbuster_2.sch:footprint=0805
nbuster_2.sch:footprint=1210
nbuster_2.sch:footprint=DIP28N
nbuster_2.sch:footprint=DMC16249.fp
nbuster_2.sch:footprint=isp_2x5_header.fp
nbuster_2.sch:footprint=POT_Bourns_3318K.fp
nbuster_2.sch:footprint=SO14
nbuster_2.sch:footprint=SQFP-50P-780L1-780L2-32N
nbuster_2.sch:footprint=SW__Panasonic_EVQPA_Series
nbuster_3.sch:footprint=0603.fp
nbuster_3.sch:footprint=0805
nbuster_3.sch:footprint=0805.fp
nbuster_3.sch:footprint=cap-elec-Panasonic-FK--D4.00-H5.80-mm
nbuster_3.sch:footprint=CON_JMP-100
nbuster_3.sch:footprint=IND__Sumida_CR43_Series
nbuster_3.sch:footprint=MSOP-50P-490L1-10N__ADI_RM-10_Package
nbuster_3.sch:footprint=SO8M
nbuster_3.sch:footprint=SOT23
nbuster_3.sch:footprint=SOT-23_Transistor.fp
nbuster_3.sch:footprint=SuperSOT23-Fairchild.fp
nbuster_3.sch:footprint=SW__Panasonic_EVQPA_Series
nbuster_3.sch:footprint=TSOT23-95P-280L1-6N__LTC_S6_Package
nbuster_3.sch:footprint=TSSOP-65P-640L1-14N
nbuster_4.sch:footprint=0402
nbuster_4.sch:footprint=ANT_FOLDED_DIPOLE__Chipcon_2500
nbuster_4.sch:footprint=NDK_NX3225SA-26MHz_xtal.fp
nbuster_4.sch:footprint=QFN-50P-400W-400L-20N-240WT-240LT__Chipcon

As you can see, many of the footprints have a - but these are
from John Luciani's footprint library.  These have not caused 
any problems up to this point.

Thanks for your help,

Roger


grep footprint= *.sch | sort -u
and post the result.

My guess is you have a footprint name which is not a valid identifier
for m4.  If you have a - (that is a dash, not an underscore) for
example as the footprint name it will cause problems.

-Dan



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


gEDA-user: vexing problem: m4:stdin:7: bad expression in

2007-11-30 Thread Traylor Roger
Dan,

entering: echo eval(-2/2) | m4
returns: -1

I'll keep looking.  Gonna whip this yet.

Thanks again,

Roger

another possibility is that you have a buggy version of m4.  Try this:

echo eval(-2/2) | m4

It will be fairly obvious if you have the broken one.

-Dan



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-30 Thread Traylor Roger
Dan,

 nbuster_3.sch:footprint=TSSOP-65P-640L1-14N

This is the culprit

  Do you still feel that this is the bug considering DJ's comment?

  I believe I was able to make another component that used the 0805 
  footprint and saw the same error in gsch2pcb output.

  At any rate, I will try it tonight and see what happens.

  Thanks again,
  Roger

  Message: 11
  Date: Fri, 30 Nov 2007 11:32:27 -0500
  From: DJ Delorie [EMAIL PROTECTED]
  Subject: Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval
  To: geda-user@moria.seul.org
  Message-ID: [EMAIL PROTECTED]

   As you can see, many of the footprints have a - but these are
   from John Luciani's footprint library.  These have not caused
   any problems up to this point.

  John disables m4 completely in his setup, so he won't have that
  problem.



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-30 Thread John Luciani
On Nov 30, 2007 3:55 PM, Traylor Roger [EMAIL PROTECTED] wrote:
 Dan,

  nbuster_3.sch:footprint=TSSOP-65P-640L1-14N
 
 This is the culprit

   Do you still feel that this is the bug considering DJ's comment?

   I believe I was able to make another component that used the 0805
   footprint and saw the same error in gsch2pcb output.


There is a good chance that is the TSSOP.

If not check ---
  MSOP-50P-490L1-10N__ADI_RM-10_Package
  SOT-23_Transistor.fp
  TSOT23-95P-280L1-6N__LTC_S6_Package
  TSSOP-65P-640L1-14N
  QFN-50P-400W-400L-20N-240WT-240LT__Chipcon

What probably happened is that in your new design contains a footprint
that has a hyphen in the name that you hadn't used before.

(* jcl *)

-- 
http://www.luciani.org


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-29 Thread Traylor Roger
Guys,
  I have been adding symbols to a schematic I'm
  building and now the additon of a new symbol
  causes an error that I cannot figure out.

  Background:
gEDA/gnetlist version 20061020, Ubuntu 7.04
Four page schematic.  
Have been making and adding symbols for weeks without problems.
Everything working well through to complete layout in pcb.
Built a new symbol today.
Symbol checks fine with gsymcheck -vv.
Did some system updates today in Ubuntu 7.04. Mostly
safe stuff like openoffice, firefox; but some linux stuff.
(Kicking myself for doing the updates now.)
  Symptoms:
   1. Whatever page I put this symbol on, gsch2pcb locks up
  for 2-3 minutes with the message:
   m4:stdin:7: bad expression in eval: /2
  then it says:
   m4: memory exhausted
  Then it finishes out things farily normally.
   2. When this behavior occurs, I see the following from gsch2pcb:
  R303: added new m4 element for footprint   0805 (value=4.7K)
  
  : added new m4 element for footprint(value=)
  
  Note the last line.  No Refdes, no value.  Odd...
   3. Other new symbols I make do not seem to cause errors,
  but when added to the schematic page, do not show up as
  newly added parts with their refdes listed.  And... you 
  always see this line reappear:
  
  : added new m4 element for footprint(value=)
  
   4. Same problems persist after reloading gEDA suite.

Any ideas?  I've been stumped for hours.

Thanks,

Roger Traylor


Extra info, if your interested
Packages that were updated today:(minus firefox and openoffice stuff)

Commit Log for Thu Nov 29 10:56:25 2007
Upgraded the following packages:

app-install-data-commercial (7.2) to 7.3
bsdutils (1:2.12r-17ubuntu2) to 1:2.12r-17ubuntu2.1
cdrecord (9:1.1.2-1) to 9:1.1.2-1ubuntu1
cupsys (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1
cupsys-bsd (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1
cupsys-client (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1
cupsys-common (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1
fglrx-control (8.34.8+2.6.20.5-16.29) to 8.34.8+2.6.20.6-16.30
genisoimage (9:1.1.2-1) to 9:1.1.2-1ubuntu1
gnome-system-tools (2.18.1-0ubuntu1) to 2.18.1-0ubuntu2
hpijs (2.7.2+1.7.3-0ubuntu1) to 2.7.2+1.7.3-0ubuntu1.1
hplip (1.7.3-0ubuntu1) to 1.7.3-0ubuntu1.1
hplip-data (1.7.3-0ubuntu1) to 1.7.3-0ubuntu1.1
libcupsimage2 (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1
libcupsys2 (1.2.8-0ubuntu8) to 1.2.8-0ubuntu8.1
libflac7 (1.1.2-5ubuntu2) to 1.1.2-5ubuntu2.1
libmagick9 (7:6.2.4.5.dfsg1-0.14ubuntu0.1) to 7:6.2.4.5.dfsg1-0.14ubuntu0.2
libnspr4 (2:1.firefox2.0.0.6+1-0ubuntu1) to 
2:1.firefox2.0.0.10+1nobinonly-0ubuntu1
libnss3 (2:1.firefox2.0.0.6+1-0ubuntu1) to 
2:1.firefox2.0.0.10+1nobinonly-0ubuntu1
liboggflac3 (1.1.2-5ubuntu2) to 1.1.2-5ubuntu2.1
libpoppler1 (0.5.4-0ubuntu8.1) to 0.5.4-0ubuntu8.2
libpoppler1-glib (0.5.4-0ubuntu8.1) to 0.5.4-0ubuntu8.2
libqt3-mt (3:3.3.8really3.3.7-0ubuntu5.1) to 3:3.3.8really3.3.7-0ubuntu5.2
libsmbclient (3.0.24-2ubuntu1.2) to 3.0.24-2ubuntu1.4
libsndfile1 (1.0.16-1build1) to 1.0.16-1ubuntu0.7.04.1
libssl0.9.8 (0.9.8c-4build1) to 0.9.8c-4ubuntu0.2
mkisofs (9:1.1.2-1) to 9:1.1.2-1ubuntu1
mount (2.12r-17ubuntu2) to 2.12r-17ubuntu2.1
openssl (0.9.8c-4build1) to 0.9.8c-4ubuntu0.2
poppler-utils (0.5.4-0ubuntu8.1) to 0.5.4-0ubuntu8.2
python-uno (2.2.0-1ubuntu4) to 2.2.0-1ubuntu5
rhythmbox (0.10.0-0ubuntu2) to 0.11.2-0ubuntu4~feisty1
samba-common (3.0.24-2ubuntu1.2) to 3.0.24-2ubuntu1.4
smbclient (3.0.24-2ubuntu1.2) to 3.0.24-2ubuntu1.4
ttf-opensymbol (2.2.0-1ubuntu4) to 2.2.0-1ubuntu5
tzdata (2007f-0ubuntu0.7.4) to 2007h-0ubuntu0.7.04
update-manager (1:0.59.23) to 1:0.59.25
update-manager-core (1:0.59.23) to 1:0.59.25
util-linux (2.12r-17ubuntu2) to 2.12r-17ubuntu2.1
util-linux-locales (2.12r-17ubuntu2) to 2.12r-17ubuntu2.1
wine (0.9.45~winehq0~ubuntu~7.04-1) to 0.9.49~winehq0~ubuntu~7.04-1
wodim (9:1.1.2-1) to 9:1.1.2-1ubuntu1
xorg-driver-fglrx (7.1.0-8.34.8+2.6.20.5-16.29) to 7.1.0-8.34.8+2.6.20.6-16.30

Installed the following packages:
libmtp5 (0.1.3-0ubuntu2)



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: vexing problem: m4:stdin:7: bad expression in eval

2007-11-29 Thread Dan McMahill
Traylor Roger wrote:
 Guys,
   I have been adding symbols to a schematic I'm
   building and now the additon of a new symbol
   causes an error that I cannot figure out.
 
   Background:
 gEDA/gnetlist version 20061020, Ubuntu 7.04
 Four page schematic.  
 Have been making and adding symbols for weeks without problems.
 Everything working well through to complete layout in pcb.
 Built a new symbol today.
 Symbol checks fine with gsymcheck -vv.
 Did some system updates today in Ubuntu 7.04. Mostly
 safe stuff like openoffice, firefox; but some linux stuff.
 (Kicking myself for doing the updates now.)
   Symptoms:
1. Whatever page I put this symbol on, gsch2pcb locks up
   for 2-3 minutes with the message:
m4:stdin:7: bad expression in eval: /2
   then it says:
m4: memory exhausted
   Then it finishes out things farily normally.
2. When this behavior occurs, I see the following from gsch2pcb:
   R303: added new m4 element for footprint   0805 (value=4.7K)
   
   : added new m4 element for footprint(value=)
   
   Note the last line.  No Refdes, no value.  Odd...

grep footprint= *.sch | sort -u

and post the result.

My guess is you have a footprint name which is not a valid identifier 
for m4.  If you have a - (that is a dash, not an underscore) for 
example as the footprint name it will cause problems.

-Dan





___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user