Le 31/01/2019 à 17:48, John Beard a écrit : > The second set of patches I just sent seems to work on the Ubuntu > docker image with CMake 3.5.1. > > Cheers, > > John
Hi John, After cleaning the build directory and reappling your second set, the build works. I tested it on msys2 with cmake 3.7, and on Kubuntu 14.04 LTS (still maintained) with cmake 3.0 Thanks. > > On Thu, Jan 31, 2019 at 4:42 PM Wayne Stambaugh <stambau...@gmail.com> wrote: >> >> On 1/31/2019 11:27 AM, jp charras wrote: >>> Le 31/01/2019 à 16:52, jp charras a écrit : >>>> Le 31/01/2019 à 16:29, Wayne Stambaugh a écrit : >>>>> JP, >>>>> >>>>> On 1/31/2019 10:11 AM, jp charras wrote: >>>>>> Le 31/01/2019 à 15:40, John Beard a écrit : >>>>>>> Hi, >>>>>>> >>>>>>> Two patches for building these libs: >>>>>>> >>>>>>> 1) Make bitmaps a "Proper" library. By splitting it off like this, the >>>>>>> includes for each of the hundreds of XPM cpp files do not need to suck >>>>>>> in WX headers. This speeds compilation by something like 10x or more >>>>>>> (it now builds in <5 seconds with -j6), with a similar reduction in >>>>>>> the size of libbitmaps.a. Also, making it a proper library allows to >>>>>>> use the CMake dependency mechanism better. >>>>>>> 2) Do the same for the CMake of the polygon libraries, again >>>>>>> simplifying all the "downstream" targets - they no longer need to >>>>>>> manually specify the linkage to polygon or the include dirs. >>>>>>> >>>>>>> Apparently, both these libraries were setting off static analysers, as >>>>>>> they were a circular dependency. For example, bitmaps required common >>>>>>> for the defs, but common required bitmaps for the images. This ended >>>>>>> up pushing all the linkage down to the final executables, which is now >>>>>>> much simpler (just link common, and you should get what you need, with >>>>>>> includes set correctly). >>>>>>> >>>>>>> Jenkins passes (MSVC and Msys2), but might be worth getting an OSX >>>>>>> build as there is a different CMake command in there! >>>>>>> >>>>>>> Cheers, >>>>>>> >>>>>>> John >>>>>> >>>>>> Hi John, >>>>>> >>>>>> I have this cmake error when trying to build Kicad with these patches: >>>>>> >>>>>> "CMake Error at pcbnew/CMakeLists.txt:645 (target_link_libraries): >>>>>> Object library target "pcbnew_kiface_objects" may not link to >>>>>> anything." >>>>>> >>>>>> (cmake version 3.7.2, W7 32bits, msys2) >>>>>> >>>>>> >>>>> >>>>> I didn't have any problem creating a 32 bit build using msys2. It maybe >>>>> your CMake version. I'm using CMake 3.12.4. I also did a clean build >>>>> so that could the issue. This change works pretty well so I hope it's >>>>> not a CMake version issue. I don't want to bump the CMake version if we >>>>> don't have to. >>>>> >>>>> Cheers, >>>>> >>>>> Wayne >>>> >>>> I just tested with a more recent msys2 version (using cmake 3.11) on a >>>> clean build, but no success. >>>> >>> >>> After tests: >>> >>> Using cmake 3.12 works. >>> But older versions do not work. >>> >> >> Forcing CMake to 3.12 will severely limit the number of platforms that >> would be able to build kicad so this patch set doesn't seem likely to be >> accepted unless we can figure out a way to accomplish the same task with >> older versions of CMake. Ubuntu Trusty uses CMake 2.8.12 but >> trusty-updates is 3.5.1 so I would reluctant to limit cmake to a newer >> version that that. >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~kicad-developers >> Post to : kicad-developers@lists.launchpad.net >> Unsubscribe : https://launchpad.net/~kicad-developers >> More help : https://help.launchpad.net/ListHelp > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : kicad-developers@lists.launchpad.net > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp > -- Jean-Pierre CHARRAS _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp