r5949 - in trunk/gta02-core: docs kicad-patches

werner at docs.openmoko.org werner at docs.openmoko.org
Wed Apr 28 10:58:36 CEST 2010


Author: werner
Date: 2010-04-28 10:58:35 +0200 (Wed, 28 Apr 2010)
New Revision: 5949

Modified:
   trunk/gta02-core/docs/GETTING-STARTED
   trunk/gta02-core/kicad-patches/eeschema-plot-only-mode.patch
   trunk/gta02-core/kicad-patches/erc-exceptions.patch
   trunk/gta02-core/kicad-patches/fix-pinedit-collision.patch
   trunk/gta02-core/kicad-patches/series
   trunk/gta02-core/kicad-patches/streamline-erc.patch
Log:
Upgraded to the latest version of KiCad.

- docs/GETTING-STARTED: put prerequisites in alphabetic order
- docs/GETTING-STARTED: moved KiCad build prerequisites to the beginning of the
  KiCad build section
- docs/GETTING-STARTED: added details on building wxWidgets
- docs/GETTING-STARTED: KiCad has moved from SourceForge Subversion (SVN) to
  Launchpad Bazaar (BZR)
- docs/GETTING-STARTED: bumped version to BZR 2358
- kicad-patches/: updated for BZR 2358



Modified: trunk/gta02-core/docs/GETTING-STARTED
===================================================================
--- trunk/gta02-core/docs/GETTING-STARTED	2010-04-28 00:34:32 UTC (rev 5948)
+++ trunk/gta02-core/docs/GETTING-STARTED	2010-04-28 08:58:35 UTC (rev 5949)
@@ -22,10 +22,10 @@
 
     - awk
     - bash
+    - GNU make (package "make" or similar)
+    - grep
     - gv (derivative of Ghostview)
-    - grep
     - gzip
-    - GNU make (package "make" or similar)
     - Perl
     - sed
     - Subversion (svn)
@@ -39,20 +39,39 @@
 - You will need a recent version of KiCad. Many distributions come
   with truly ancient versions. To build KiCad,
 
-  - download KiCad, revision 1923:
+  - fulfill the following prerequisites:
 
-    svn checkout -r 1923 \
-      https://kicad.svn.sourceforge.net/svnroot/kicad/trunk/kicad
-    cd kicad
+    - Bazaar (bzr)
 
+    - a recent version of CMake (2.6.4 is known to work)
+
+    - a recent development version of libboost (1.36 or higher)
+
+    - a recent development version of wxWindows (2.8.10 or higher with
+      OpenGL support). If compilation of KiCad fails with
+
+      #error Please set wxUSE_GLCANVAS to 1 in setup.h.
+
+      then you need to build wxWindows as well. We'll use version 2.8.11,
+      which solves a build problem that existed in 2.8.10:
+
+      wget http://prdownloads.sourceforge.net/wxwindows/wxGTK-2.8.11.tar.bz2
+      tar xfj wxGTK-2.8.11.tar.bz2
+      cd wxGTK-2.8.11
+      ./configure --prefix=/usr/local --with-opengl --enable-unicode
+      make
+      make install
+      cd ..
+
+  - download KiCad, revision 2358:
+
+    bzr branch -r 2358 lp:kicad kicad
+    cd kiad
+
     The KiCad revision we currently use is recorded in the first line
     of kicad-patches/series. Our patches and build process may or may
     not work with more recent revisions.
 
-  - you need a recent development version of libboost (1.36 or higher)
-
-  - you need a recent development version of wxWindows (libwxgtk-2.8)
-
   - Make a link to the patches of the gta02-core project:
 
     ln -s ../kicad-patches patches

Modified: trunk/gta02-core/kicad-patches/eeschema-plot-only-mode.patch
===================================================================
--- trunk/gta02-core/kicad-patches/eeschema-plot-only-mode.patch	2010-04-28 00:34:32 UTC (rev 5948)
+++ trunk/gta02-core/kicad-patches/eeschema-plot-only-mode.patch	2010-04-28 08:58:35 UTC (rev 5949)
@@ -17,17 +17,18 @@
 
 Index: kicad/eeschema/eeschema.cpp
 ===================================================================
---- kicad.orig/eeschema/eeschema.cpp        2009-07-01 23:14:44.000000000 -0300
-+++ kicad/eeschema/eeschema.cpp        2009-07-01 23:15:15.000000000 -0300
-@@ -12,6 +12,7 @@
- #include "general.h"
+--- kicad.orig/eeschema/eeschema.cpp	2010-04-28 04:34:54.000000000 -0300
++++ kicad/eeschema/eeschema.cpp	2010-04-28 05:32:37.000000000 -0300
+@@ -10,6 +10,8 @@
+ #include "gestfich.h"
  #include "bitmaps.h"
  #include "eda_dde.h"
++#include "program.h"
 +#include "plotps.h"
+ #include "id.h"
  
- #include "libcmp.h"
- #include "protos.h"
-@@ -120,6 +121,69 @@
+ #include "program.h"
+@@ -85,6 +87,69 @@
  int DefaultTransformMatrix[2][2] = { { 1, 0 }, { 0, -1 } };
  
  
@@ -97,7 +98,7 @@
  /************************************/
  /* Called to initialize the program */
  /************************************/
-@@ -140,6 +204,9 @@
+@@ -127,6 +192,9 @@
  
      InitEDA_Appl( wxT( "EESchema" ), APP_TYPE_EESCHEMA );
  

Modified: trunk/gta02-core/kicad-patches/erc-exceptions.patch
===================================================================
--- trunk/gta02-core/kicad-patches/erc-exceptions.patch	2010-04-28 00:34:32 UTC (rev 5948)
+++ trunk/gta02-core/kicad-patches/erc-exceptions.patch	2010-04-28 08:58:35 UTC (rev 5949)
@@ -32,8 +32,8 @@
 
 Index: kicad/eeschema/erc.cpp
 ===================================================================
---- kicad.orig/eeschema/erc.cpp	2009-08-13 16:48:27.000000000 +0200
-+++ kicad/eeschema/erc.cpp	2009-08-13 16:49:08.000000000 +0200
+--- kicad.orig/eeschema/erc.cpp	2010-04-28 05:40:38.000000000 -0300
++++ kicad/eeschema/erc.cpp	2010-04-28 05:49:35.000000000 -0300
 @@ -4,6 +4,7 @@
  
  #include "fctsys.h"
@@ -42,10 +42,10 @@
  #include "class_drawpanel.h"
  #include "kicad_string.h"
  #include "gestfich.h"
-@@ -212,6 +213,187 @@
-     return err_count;
+@@ -224,6 +225,173 @@
  }
  
+ 
 +static struct exception
 +{
 +    char* a_ref;
@@ -58,9 +58,7 @@
 +
 +
 +
-+/********************************************************************/
 +static void FreeExceptions( void )
-+/********************************************************************/
 +{
 +    struct exception* next;
 +
@@ -74,9 +72,7 @@
 +}
 +
 +
-+/********************************************************************/
 +static bool ParseField( char **s, char **field )
-+/********************************************************************/
 +{
 +    *field = *s;
 +    if( ! **s )
@@ -92,9 +88,7 @@
 +}
 +
 +
-+/********************************************************************/
 +static bool ParseException( char *s )
-+/********************************************************************/
 +{
 +    struct exception tmp;
 +    struct exception* e;
@@ -119,9 +113,7 @@
 +}
 +
 +
-+/********************************************************************/
 +static bool LoadExceptionsByName( const wxString &file_name )
-+/********************************************************************/
 +{
 +    FILE* file;
 +    char buf[200]; /* enough room for chatty comments */
@@ -147,20 +139,20 @@
 +        hash = strchr( s, '#' );
 +        if( hash )
 +            *hash = 0;
-+        
++
 +        // skip leading whitespace
 +        while( *s && isspace( *s ) )
 +            s++;
 +        if( ! *s )
 +            continue;
-+        
++
 +        tmp = (char*) MyMalloc( strlen( s ) + 1 );
 +        strcpy( tmp, s );
-+        
++
 +        if( ! ParseException( tmp ) )
 +        {
 +            wxString msg;
-+        
++
 +            msg.Printf( wxT( "Parse error at %s:%d" ), CONV_TO_UTF8(file_name), n );
 +            DisplayError( NULL, msg );
 +            MyFree( tmp );
@@ -174,9 +166,7 @@
 +}
 +
 +
-+/********************************************************************/
 +static void LoadExceptions( void )
-+/********************************************************************/
 +{
 +    wxFileName fn;
 +
@@ -187,9 +177,7 @@
 +}
 +
 +
-+/********************************************************************/
 +static bool FindException( NETLIST_OBJECT* a, NETLIST_OBJECT* b )
-+/********************************************************************/
 +{
 +    SCH_COMPONENT* a_comp = (SCH_COMPONENT*) a->m_Link;
 +    SCH_COMPONENT* b_comp = (SCH_COMPONENT*) b->m_Link;
@@ -219,18 +207,16 @@
 +}
 +
 +
-+/********************************************************************/
 +static bool IsException( NETLIST_OBJECT* a, NETLIST_OBJECT* b )
-+/********************************************************************/
 +{
 +    return FindException( a, b ) || FindException( b, a);
 +}
 +
 +
- /**************************************************/
  void DIALOG_ERC::TestErc( wxArrayString* aMessagesList )
- /**************************************************/
-@@ -248,6 +430,7 @@
+ {
+     wxFileName fn;
+@@ -258,6 +426,7 @@
  
      g_EESchemaVar.NbErrorErc   = 0;
      g_EESchemaVar.NbWarningErc = 0;
@@ -238,16 +224,16 @@
  
      /* Cleanup the entire hierarchy */
      EDA_ScreenList ScreenList;
-@@ -272,6 +455,8 @@
+@@ -285,6 +454,8 @@
  
      m_Parent->BuildNetListBase();
  
 +    LoadExceptions();
 +
-     /* Reset the flag m_FlagOfConnection, that will be used next, in calculations */
-     for( unsigned ii = 0;  ii < g_NetObjectslist.size(); ii++ )
-        g_NetObjectslist[ii]->m_FlagOfConnection = UNCONNECTED;
-@@ -339,7 +524,13 @@
+     /* Reset the flag m_FlagOfConnection, that will be used next, in
+      * calculations */
+     for( unsigned ii = 0; ii < g_NetObjectslist.size(); ii++ )
+@@ -354,7 +525,13 @@
  
      // Displays global results:
      wxString num;
@@ -261,25 +247,25 @@
 +        num.Printf( wxT( "%d" ), g_EESchemaVar.NbErrorErc );
      m_TotalErrCount->SetLabel( num );
  
-     num.Printf( wxT( "%d" ), g_EESchemaVar.NbErrorErc - g_EESchemaVar.NbWarningErc );
-@@ -619,6 +810,12 @@
-             if( g_NetObjectslist[NetItemTst]->m_FlagOfConnection > 0 )
-                 break;
+     num.Printf( wxT(
+@@ -657,6 +834,12 @@
+             if( g_NetObjectslist[NetItemTst]->m_FlagOfConnection != 0 )
+ 		break;
  
-+            if( IsException( g_NetObjectslist[NetItemRef], g_NetObjectslist[NetItemTst] ) )
-+            {
-+                g_EESchemaVar.NbExceptionErc++;
-+                break;
-+            }
++		if( IsException( g_NetObjectslist[NetItemRef], g_NetObjectslist[NetItemTst] ) )
++		{
++		    g_EESchemaVar.NbExceptionErc++;
++		    break;
++		}
 +
-             Diagnose( panel, g_NetObjectslist[NetItemRef], g_NetObjectslist[NetItemTst], 0, erc );
-             g_NetObjectslist[NetItemTst]->m_FlagOfConnection = NOCONNECT_SYMBOL_PRESENT;
-             break;
+             Diagnose( panel,
+                       g_NetObjectslist[NetItemRef],
+                       g_NetObjectslist[NetItemTst],
 Index: kicad/eeschema/general.h
 ===================================================================
---- kicad.orig/eeschema/general.h	2009-08-13 16:48:08.000000000 +0200
-+++ kicad/eeschema/general.h	2009-08-13 16:49:08.000000000 +0200
-@@ -123,6 +123,7 @@
+--- kicad.orig/eeschema/general.h	2010-04-28 04:34:54.000000000 -0300
++++ kicad/eeschema/general.h	2010-04-28 05:42:13.000000000 -0300
+@@ -117,6 +117,7 @@
  {
      int NbErrorErc;
      int NbWarningErc;

Modified: trunk/gta02-core/kicad-patches/fix-pinedit-collision.patch
===================================================================
--- trunk/gta02-core/kicad-patches/fix-pinedit-collision.patch	2010-04-28 00:34:32 UTC (rev 5948)
+++ trunk/gta02-core/kicad-patches/fix-pinedit-collision.patch	2010-04-28 08:58:35 UTC (rev 5949)
@@ -12,16 +12,17 @@
 
 Index: kicad/eeschema/pinedit.cpp
 ===================================================================
---- kicad.orig/eeschema/pinedit.cpp        2009-05-21 23:00:00.000000000 -0300
-+++ kicad/eeschema/pinedit.cpp        2009-05-21 23:00:12.000000000 -0300
-@@ -193,6 +193,10 @@
+--- kicad.orig/eeschema/pinedit.cpp	2010-04-28 04:34:54.000000000 -0300
++++ kicad/eeschema/pinedit.cpp	2010-04-28 05:35:24.000000000 -0300
+@@ -231,6 +231,11 @@
+         if( Pin == CurrentPin || newpos != Pin->m_Pos || Pin->m_Flags )
              continue;
-         if( newpos != Pin->m_Pos )
-             continue;
-+        if( g_EditPinByPinIsOn &&
-+            Pin->m_Unit != CurrentPin->m_Unit &&
-+            Pin->m_Unit && CurrentPin->m_Unit )
-+            continue;
-         if( Pin->m_Flags )
-             continue;
+ 
++	if( g_EditPinByPinIsOn &&
++	    Pin->m_Unit != CurrentPin->m_Unit &&
++	    Pin->m_Unit && CurrentPin->m_Unit )
++	    continue;
++
          if( ask_for_pin && !g_EditPinByPinIsOn )
+         {
+             DrawPanel->m_IgnoreMouseEvents = true;

Modified: trunk/gta02-core/kicad-patches/series
===================================================================
--- trunk/gta02-core/kicad-patches/series	2010-04-28 00:34:32 UTC (rev 5948)
+++ trunk/gta02-core/kicad-patches/series	2010-04-28 08:58:35 UTC (rev 5949)
@@ -1,4 +1,4 @@
-# Based on SVN revision 1923
+# Based on BZR revision 2358
 
 # eeschema --plot extension, pending
 eeschema-plot-only-mode.patch

Modified: trunk/gta02-core/kicad-patches/streamline-erc.patch
===================================================================
--- trunk/gta02-core/kicad-patches/streamline-erc.patch	2010-04-28 00:34:32 UTC (rev 5948)
+++ trunk/gta02-core/kicad-patches/streamline-erc.patch	2010-04-28 08:58:35 UTC (rev 5949)
@@ -9,36 +9,44 @@
 
 Index: kicad/eeschema/erc.cpp
 ===================================================================
---- kicad.orig/eeschema/erc.cpp	2009-07-03 05:00:34.000000000 -0300
-+++ kicad/eeschema/erc.cpp	2009-07-03 05:06:29.000000000 -0300
-@@ -609,18 +609,18 @@
+--- kicad.orig/eeschema/erc.cpp	2010-04-28 05:40:28.000000000 -0300
++++ kicad/eeschema/erc.cpp	2010-04-28 05:40:38.000000000 -0300
+@@ -648,23 +648,22 @@
                  break;
  
              *NetNbItems += 1;
--            if( erc == OK )         // 1 marqueur par pin maxi
++            if( erc != OK )
++		break;
++
++	    erc = DiagErc[ref_elect_type][jj];
+             if( erc == OK )
 -            {
 -                erc = DiagErc[ref_elect_type][jj];
 -                if( erc != OK )
 -                {
 -                    if( g_NetObjectslist[NetItemTst]->m_FlagOfConnection == 0 )
 -                    {
--                        Diagnose( panel, g_NetObjectslist[NetItemRef], g_NetObjectslist[NetItemTst], 0, erc );
--                        g_NetObjectslist[NetItemTst]->m_FlagOfConnection = NOCONNECT_SYMBOL_PRESENT;
+-                        Diagnose( panel,
+-                                  g_NetObjectslist[NetItemRef],
+-                                  g_NetObjectslist[NetItemTst],
+-                                  0,
+-                                  erc );
+-                        g_NetObjectslist[NetItemTst]->m_FlagOfConnection =
+-                            NOCONNECT_SYMBOL_PRESENT;
 -                    }
 -                }
 -            }
-+            if( erc != OK )         // 1 marqueur par pin maxi
-+                break;
++		break;
++            if( g_NetObjectslist[NetItemTst]->m_FlagOfConnection != 0 )
++		break;
 +
-+            erc = DiagErc[ref_elect_type][jj];
-+            if( erc == OK )
-+                break;
-+
-+            if( g_NetObjectslist[NetItemTst]->m_FlagOfConnection > 0 )
-+                break;
-+
-+            Diagnose( panel, g_NetObjectslist[NetItemRef], g_NetObjectslist[NetItemTst], 0, erc );
-+            g_NetObjectslist[NetItemTst]->m_FlagOfConnection = NOCONNECT_SYMBOL_PRESENT;
++            Diagnose( panel,
++                      g_NetObjectslist[NetItemRef],
++                      g_NetObjectslist[NetItemTst],
++                      0,
++                      erc );
++            g_NetObjectslist[NetItemTst]->m_FlagOfConnection =
++		NOCONNECT_SYMBOL_PRESENT;
              break;
          }
      }




More information about the commitlog mailing list