← Back to team overview

kicad-developers team mailing list archive

Re: Eeschema now case sensitive?

 

On 22 February 2014 15:02, Moses McKnight <moses@xxxxxxxxxxx> wrote:

> Hi,
>
> I just built the latest kicad using the kicad-instal.sh script on Linux
> Mint 16 64-bit, and when I open my schematics, half of the symbols are now
> missing.
>
> I verified that the parts are in the libraries by viewing them in the
> module manager and by placing some new ones on the schematic.  It looks
> like the Chip Name on all the broken symbols is in all caps, but in the
> module manager they are lower case or mixed case - leading me to think that
> now the names are case sensitive?  I thought the names were made all upper
> case when creating symbols - but I don't remember for sure now.
>
> I just checked on another system with version BZR 4631 and the same file
> opens properly, so something got broken since then.
>

In the toplevel CMake file [1] there is a KICAD_KEEPCASE option which
defaults to ON, that is, case-sensitive component matching. If it is set to
OFF, then component name matching is case-insensitive. In revision 4646 [2]
this was set to default ON rather than OFF, and was made properly
functional. The commit note with the change reads

> The desire is to migrate designs *away from* case independence, and to
create
> designs which use literally (case specific) interpreted component names.
But for
> backwards compatibility, you may turn OFF this option if you really must.
> (Remember that with KiCad using text data files, typically you would be
better
> off simply doctoring those files into a case literal state with a text
editor
> and move forward into the brave new world of case specificity. Also, BOM
> generators may not work properly when you have this option turned OFF,
the xml
> export's referential integrity is broken on library part name. Hence the
default
> is ON now, as of 29-Jan-2014.

If you decide to switch back to case-insensitive mode, you should be able
to do so with an option to the kicad-install script. I've never used the
script personally, but on line 37 [3] there is a variable OPTS defined
which list options to pass through to CMake. So you should be able to do
something like

    $ OPTS="-DKICAD_KEEPCASE=OFF" ./kicad-install.sh

and it will re-compile with case-insensitive component matching.

I haven't tested this, but hopefully it should work.

Blair

[1]:
http://bazaar.launchpad.net/~kicad-product-committers/kicad/product/view/head:/CMakeLists.txt#L36
[2]:
http://bazaar.launchpad.net/~kicad-product-committers/kicad/product/revision/4646
[3]:
http://bazaar.launchpad.net/~kicad-product-committers/kicad/product/view/head:/scripts/kicad-install.sh#L37

References