Commit Graph

230 Commits

Author SHA1 Message Date
Wayne Stambaugh 4ed346ea64 Eeschema: initial schematic I/O plugin.
* Factor out PROPERTIES object from the PCB plugin code and move it into
  common so it can be used by both the Pcbnew and Eeschema plugins.

* Add schematic I/O plugin manager for loading and saving schematic and
  component library files.

* Add initial attempt at a parser for current schematic file format.  This
  parser will be infinitely more strict than the current parser which is very
  forgiving in what it parses.

* Make minor changes to the base bitmap class to support the new parser.

* Add find root sheet support to sheet object to allow fetching the root
  sheet from any sheet in the stack.
2016-07-06 05:22:56 -04:00
Wayne Stambaugh df99b4068d Update stable release 5 road map.
* Remove tasks that are not going to be completed by FOSDEM 2017 release
  (hopefully) announcement.

* Update item task lists to reflects changes discussed at CERN meeting.

* Update item status to reflect the current state of the tasks.

* Add a few new changes that are slated for release.

* Revise the generic road map by deleting complete items and adding new items
  discussed at CERN meeting.

* Remove unused definition from config.h.cmake.
2016-07-05 10:06:23 -04:00
Simon Richter ea6ef51649 CMake: add FindSWIG.cmake from CMake 3.5 for swig 3.0 support.
* The FindSWIG.cmake shipped with CMake 3.0 does not yet look for the
  "cmake3.0" binary, this was added shortly after the 3.0 release.

* This file can be removed once the minimum CMake version is 3.1 or greater.
2016-06-30 11:03:09 -04:00
Simon Richter 4ee956d77a FindwxWidgets.cmake: Remove extra newline 2016-02-15 18:50:49 +01:00
Simon Richter ff99b51b7d FindwxWidgets.cmake: Report failure of wx-config when looking for components 2016-02-15 18:50:49 +01:00
Simon Richter 4c29843813 FindwxWidgets.cmake: Use ENV foo rather than ENV{foo} 2016-02-15 18:50:49 +01:00
Simon Richter 9d08d93c26 FindwxWidgets.cmake: Add comment describing code block 2016-02-15 18:50:49 +01:00
Simon Richter 380bb37931 FindwxWidgets.cmake: Reformat documentation 2016-02-15 18:50:49 +01:00
Simon Richter c109abb87e FindwxWidgets.cmake: Do not explicitly declare FOUND_VAR, unnecessary 2016-02-15 18:50:49 +01:00
Simon Richter 801611fad8 FindwxWidgets.cmake: Drop nonsensical assignment
No idea where that came from, but it is almost certainly an error.
2016-02-15 18:50:48 +01:00
Simon Richter f7d8a412cf FindwxWidgets.cmake: Determine version even when not asked to 2016-02-15 18:50:48 +01:00
Simon Richter 029a3ba61e FindwxWidgets.cmake: Improve regex for version number matches 2016-02-15 18:50:48 +01:00
Simon Richter 2f1bbdc0f3 FindwxWidgets.cmake: Simplify MATCHES
Arbitrary characters at beginning and end of the line are implicitly allowed anyway
2016-02-15 18:50:48 +01:00
Simon Richter ea4c8c546f FindwxWidgets.cmake: Expect directory layout for MSVC 64 bit
On 64 bit MSVC, the DLLs and import libraries are placed in a directory
called vc_x64, to allow parallel installation of 32 and 64 bit wxWidgets.
2016-02-15 18:50:48 +01:00
Simon Richter 51a1588456 FindwxWidgets.cmake: documentation for variables 2016-02-15 18:50:48 +01:00
Simon Richter bbd0c539e9 FindwxWidgets.cmake: Look for versioned wx-config scripts 2016-02-15 18:50:48 +01:00
Simon Richter bc480a010b FindwxWidgets.cmake: Fix indentation 2016-02-15 18:50:48 +01:00
Simon Richter 38359272c4 FindwxWidgets.cmake: Show line number in debug output 2016-02-15 18:50:48 +01:00
Simon Richter 9ff394e72a FindwxWidgets.cmake: Treat CygWin as unix rather than undefined 2016-02-15 18:50:48 +01:00
Simon Richter b66a584a8a FindwxWidgets.cmake: Use lowercase for CMake builtins 2016-02-15 18:50:48 +01:00
Simon Richter 6a7fa8950c FindwxWidgets.cmake: Use uppercase for macro names 2016-02-15 18:50:47 +01:00
Simon Richter 78a0316a08 FindwxWidgets.cmake: Use uppercase for DBG_MSG macro 2016-02-15 18:50:47 +01:00
Simon Richter b7adcb3728 FindwxWidgets.cmake: drop a few dbg_msg invocations 2016-02-15 18:48:40 +01:00
Simon Richter 86d072b5d1 FindwxWidgets.cmake: Remove arguments from else() and end*()
To reduce differences with upstream FindwxWidgets.cmake, use their style of
ending blocks.
2016-02-15 18:48:40 +01:00
Wayne Stambaugh f15af3ac8d Restore FindOpenSSL.cmake, the cmake version does not work on MinGW. 2016-01-14 10:31:59 -05:00
Wayne Stambaugh 99ba5259a6 Undo commit r6456 which completely breaks building on MSYS2/MingGW. 2016-01-12 21:50:18 -05:00
Simon Richter b09c88042b Synchronize FindwxWidgets.cmake with CMake project 2016-01-12 20:33:13 -05:00
Simon Wells 9362a6ec24 Update FindwxWidgets.cmake to new version without -isystem
See: https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4d05f195
2016-01-11 17:15:48 -05:00
Chris Pavlina 020ba521df Remove FindOpenSSL.cmake (not used since removing avhttp) 2016-01-10 19:47:30 -05:00
Wayne Stambaugh ff924f6983 Remove download_avhttp.cmake and avhttp source archive. 2016-01-03 18:55:42 -05:00
Wayne Stambaugh c751bf60bc Remove Boost library building and other build improvements.
* Remove download and build Boost from source and all CMake boost source build
  dependencies.
* Make FindCairo.cmake use pkg-config when it's available not just all
  platforms except windows.
* Add version checking to FindCairo.cmake.
* Change find GML version to 0.9.5.1 which is the current version in Ubuntu
  14.04 LTS.
* Update required Cairo version to 1.12.1.
2016-01-03 15:33:09 -05:00
Wayne Stambaugh 204f025ff4 Build configuration fixes.
* Fix broken include path in FindGLM.cmake ( credit Cirilo Bernardo ).
* Fix if()/endif() warning in FindGLM.cmake.
* Remove trailing white space in FindGLM.cmake.
* Fix bug introduced in r6363 that inadvertently made OpenMP a required
  dependency instead of an optional dependency.
* Remove quiet flag for FindOpenMP to report findings.
2015-12-10 11:35:43 -05:00
Simon Richter 32d4dae5ef CMake: use CMake's position independent code handling.
* Bump minimum CMake revision to 2.8.12.  The CMake position independent code
  handling was introduced in CMake 2.8.9 but 2.8.12 is current version in
  Ubuntu 14.04 LTS which is a very popular distro.
* CMake provides a simple declarative statement to enable PIC, so no compiler
  dependent handling is required.
* There is also no need to tell Boost to build with -fPIC, their build system
  is smart enough.
2015-12-08 09:17:23 -05:00
jean-pierre charras 256e47c00f Commit missing file FindGLM.cmake 2015-12-08 11:52:09 +01:00
Simon Richter 2869c9f49a CMake: use visibility definitions in provided by CMake when available.
CMake 3.0 defines two new variables:

 * CMAKE_CXX_VISIBILITY_PRESET and
 * CMAKE_VISIBILITY_INLINES_HIDDEN

to control whether symbols not explicitly tagged for export are implicitly
exported.  Because only version 3.3 and later also applies that to static
libraries when in 3.3 mode, compatibility code is added as well.

When the minimum required version is bumped to 3.3, this code becomes
obsolete and a warning is displayed that the compatibility code should be
removed as well.
2015-12-07 16:46:18 -05:00
Wayne Stambaugh b04f18b245 CMake: remove OpenSSL download and build dependency code.
* Removed some left over OSX_DEP_BUILDER code missed in my previous commit.
2015-12-03 10:59:02 -05:00
Wayne Stambaugh 6f5a49bb60 Remove OSX dependency builder code from CMake files.
* Remove USE_OSX_DEPS_BUILDER option.
* Remove all download_foo.cmake files used by the OSX dependency builder.
2015-12-01 09:44:40 -05:00
jean-pierre charras 9dc5bc4c66 Rename the automatically generated version.h to kicad_build_version.h as a workaround to an issue in msys2: for a very obscure reason, version.h was added as dependency to most of .cpp files. 2015-11-24 11:05:34 +01:00
Wayne Stambaugh 463b8b4127 Revert changes to CreateGitVersionHeader.cmake that were causing configuration issues. 2015-09-14 08:45:25 -04:00
Joseph Chen c890abe08a Improve git generated KiCad version string. 2015-09-13 14:04:40 -04:00
Nick Østergaard af1f3c9b49 Add git build version header support.
* Add CreateGitVersionHeader.cmake to extract git version information to create the kicad version
  header.
* Add check for .git folder in source path to trigger git version CMake macro.
2015-07-12 20:06:50 -04:00
Wayne Stambaugh 5ddc9b378b Correctly fix version header generation to be rebuilt during make.
* Use CMake add_custom_target() to run WriteVersionHeader.cmake as a command.
* Modify WriteVersionHeader.cmake to be run as a command instead of a macro.
* Add version header creation as a CMake common library build dependency.
* Add cached CMake variable KICAD_BUILD_VERSION when build version is defined during
  configuration.
2015-07-10 14:47:59 -04:00
Wayne Stambaugh 94ad141570 Actually remove file CMakeModules/version.h.cmake forgotten in previous commit. 2015-07-05 15:27:00 -04:00
Wayne Stambaugh 9d69b73b85 Minor version string generation changes.
* Fix CMake macro create_bzr_version_header to always update version.h file whenever a repo change
  is found.  Running `make rebuild_cache is no longer required.
* Add new CMake function for writing version.h file.
* Always use version.h file for build version string instead of meaningless hard coded date.
* Only use bzr version string when build version is not defined at configuration time for stable release
  version strings.
* Minor cleanup of FindBazaar.cmake.
* Remove unnecessary version.h.cmake file.
2015-07-05 15:24:34 -04:00
Nicolas PLANEL 9349158d02 Add missing CXX check : HAVE_STRCASECMP, HAVE_STRNCASECMP on string.h
This issue appear with clang++ -O1 -fsanitize=address compiler
2015-06-11 22:14:05 -04:00
Simon Richter 89699a193a Fix typo in FindOpenSSL.cmake 2015-04-29 12:50:16 -04:00
Wayne Stambaugh 4274f2d5d5 Fix config.h default data install path assignment during configuration.
* Remove redundant definition of KICAD_DATA_PATH since DEFAULT_INSTALL_PATH
  was already defined.
* Use DEFAULT_INSTALL_PATH as the substitution for the default environment
  variable paths.
* Add option to define DEFAULT_INSTALL_PATH during CMake configuration with
  fall back to CMAKE_INSTALL_PREFIX if not not defined.
* Developer note: this change is primarily for package builders where
  CMAKE_INSTALL_PATH is the path where the package builder temporarily
  installs the build output before creating the package.  When building
  packages, DEFAULT_INSTALL_PATH should be set to the path where the
  package will be installed by default.
2015-04-08 13:27:04 -04:00
unknown b3b791961a coverity common folder fixes (mainly not initialized members). 2015-03-11 17:04:20 +01:00
Wayne Stambaugh d13912c26a Fix bug in gEDA footprint library parser and OpenSSL version CMake file. (fixes lp:1427917)
* Fixed incorrect parameter ordering in gEDA footprint library parser
  which read drill diameter, pad clearance and solder mask clearance.
* Fix FindOpenSSL.cmake version detect bug which was exposed by OpenSSL
  version 1.0.2.
2015-03-04 14:46:06 -05:00
Bernhard Stegmaier 30acc07e11 Default path fixes and remove old to find 3D model path code.
* Fix default KISYSMOD/KISYS3DMOD (#ifdef typo) for OSX builds.
* Remove setting KIGITHUB from kicad/pcbnew Info.plist in favor of hardcoded default
  setting for OSX builds.
* Remove now unneeded Set3DShapesDefaultPath() and other small things.
2015-02-27 08:34:02 -05:00