← Back to team overview

kicad-developers team mailing list archive

Re: OCE plugin for 3D viewer

 

On 9/2/2016 4:28 PM, Nick Østergaard wrote:
> 2016-09-02 21:25 GMT+02:00 Wayne Stambaugh <stambaughw@xxxxxxxxx>:
>> Cirilo,
>>
>> Someone still needs to address building oce on msys2.  I just spent way
>> too much time building oce from source on msys2.  The oce folks decided
>> to ignore CMAKE_INSTALL_PREFIX and use there own install path stuff
>> which is is not compatible with the msys2 file system hierarchy.  The
>> bad thing is you cannot manually copy the dlls and link stub files to
>> the appropriate paths because the generated cmake oce find stuff will
>> point to the incorrect paths.  To create PKGBUILD for msys2 will require
>> JP's patch to fix long command lengths along with a patch to fix oce's
>> install path issues.  If someone else has time to work on this please do.
> 
> As I mentioned earlier, I am trying to address the OCE build for
> msys2, but there are some problems, which I don't know if they are
> fixed in latest cmake.
> 
> https://github.com/Alexpux/MINGW-packages/pull/1618
> 
> I am just not sure what the best thing to do is for those paths for
> _IMPORT_PREFIX in OCE-libraries.cmake and
> OCE_INCLUDE_DIRS from OCEConfig.cmake.
> 
> If they are set to windows paths, then it works. But that is not how
> they are generated, and it should probably be changed as a post
> install step if they need to be hacked like this.

Here is the offending code in the main oce CMakeList file:

# Libraries are installed by default in /usr/local/lib on UNIX
# based platforms and c:/OCE-VERSION/Win[32|64]/lib on windows based
# platforms

if(WIN32)
	set(_PSUFFIX "Win${BIT}/")
else(WIN32)
	set(_PSUFFIX "")
endif(WIN32)

This installs the dlls in ${OCE_INSTALL_PREFIX}/bin/win##/ and the link
stubs in ${OCE_INSTALL_PREFIX}/lib/win##/ where ## is either 32 or 64
depending on the build.  This probably should be:

if(WIN32 AND NOT MINGW)
	set(_PSUFFIX "Win${BIT}/")
else(WIN32)
	set(_PSUFFIX "")
endif(WIN32)

This would make _PSUFFIX="" which would should install everything in the
correct path and generate the correct cmake find files for the package.
Why the oce folks don't just use the default cmake install paths is
beyond me.  Maybe this is still here for issues with older versions of
cmake.

> 
>>
>> Thanks,
>>
>> Wayne
>>
>> On 9/2/2016 6:22 AM, Cirilo Bernardo wrote:
>>> Thanks for the merge and to everyone who's helped out with the
>>> cross-platform issues.
>>> I've got a new feature branch "kicad-step" with the kicad2step
>>> standalone tool if anyone
>>> feels like playing with it and providing some feedback.  This is the
>>> tool which I plan to
>>> make available as an item in the "Export" menu to give KiCad it's own
>>> built-in MCAD
>>> export.
>>>
>>> https://code.launchpad.net/~cirilo-bernardo/kicad/+git/kicad-oce
>>>
>>> The long-term plan is to make this tool a genuine plugin, but the API
>>> required for that
>>> is turning out to be quite a big job and is currently on hold due to my
>>> limited free time.
>>>
>>> This stand-alone tool makes use of mRoszko's SEXPR parser which is a
>>> great tool
>>> for making third-party tools that can read KiCad PCB files.
>>>
>>> - Cirilo
>>>
>>>
>>> On Fri, Sep 2, 2016 at 4:20 PM, Simon Wells <swel024@xxxxxxxxx
>>> <mailto:swel024@xxxxxxxxx>> wrote:
>>>
>>>     just fyi a couple of tips on OSX
>>>
>>>     Make sure that brew is installing oce-0.17.2 this was only commited to
>>>     brew mid august so if its only installing 0.17 (which is broke) then
>>>     brew update
>>>
>>>     add
>>>
>>>      -DUSE_OCE=ON
>>>     -DOCE_DIR=/usr/local/opt/oce/OCE.framework/Versions/0.17/Resources/
>>>
>>>     to your cmake line and it will be bundled automatically. Tested on rev
>>>     38e7deb with no issues.
>>>
>>>     On Fri, Sep 2, 2016 at 12:13 PM, Chris Pavlina
>>>     <pavlina.chris@xxxxxxxxx <mailto:pavlina.chris@xxxxxxxxx>> wrote:
>>>     > Okay, this is friggin awesome. I can finally have models of
>>>     > *everything*, it's so nice! :)
>>>     >
>>>     > Sexy PCB shot: https://misc.c4757p.com/12091-motherboard.png
>>>     <https://misc.c4757p.com/12091-motherboard.png>
>>>     >
>>>     > Thanks Cirilo!
>>>     >
>>>     > On Thu, Sep 01, 2016 at 04:45:33PM -0400, Wayne Stambaugh wrote:
>>>     >>
>>>     >>
>>>     >> On 9/1/2016 4:18 PM, Chris Pavlina wrote:
>>>     >> > On Thu, Sep 01, 2016 at 04:10:13PM -0400, Wayne Stambaugh wrote:
>>>     >> >> On 9/1/2016 2:29 PM, José Ignacio wrote:
>>>     >> >>> On Thu, Sep 1, 2016 at 12:02 PM, Wayne Stambaugh
>>>     <stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>> wrote:
>>>     >> >>>> Sorry it took so long.  I took a look at Cirilo's changes an
>>>     it looks
>>>     >> >>>> good.  We still need a PKGBUILD file for msys2 with JPs
>>>     patch so we
>>>     >> >>>> don't have to build oce from source.
>>>     >> >>>>
>>>     >> >>>> When I merge Cirilo's 3d-plugin branch and I had to create a
>>>     commit
>>>     >> >>>> message which made me the commit author.  This seems brain
>>>     dead to me.
>>>     >> >>>> Here is the new commit log entry:
>>>     >> >>>>
>>>     >> >>>> commit 12c26047bffd54ccbb88348acfe7f653556450da
>>>     >> >>>> Merge: fcedef8 b656a81
>>>     >> >>>> Author: Wayne Stambaugh <stambaughw@xxxxxxxxx
>>>     <mailto:stambaughw@xxxxxxxxx>>
>>>     >> >>>> Date:   Thu Sep 1 11:59:44 2016 -0400
>>>     >> >>>>
>>>     >> >>>>     Merge remote-tracking branch 'cirilo/3d-plugin'
>>>     >> >>>>
>>>     >> >>>> I really only want to show Cirilo's commit log entries as a
>>>     new commit.
>>>     >> >>>> WTF! I'm liking git less every time I use it.  What do I
>>>     need to do to
>>>     >> >>>> get the correct commit history from Cirlo's 3d-plugin branch?
>>>     >> >>>>
>>>     >> >>>
>>>     >> >>> Cirilo's commit history remains intact in the merged branch,
>>>     you just
>>>     >> >>> need to walk through that branch instead of master when
>>>     reading the
>>>     >> >>> commit logs. If cirilo's branch was rebased to the current
>>>     master you
>>>     >> >>> could do a fast-forward merge, which would graft his commits
>>>     into the
>>>     >> >>> master branch and make his last commit the "new master". In
>>>     either
>>>     >> >>> case the history is perfectly readable.
>>>     >> >>>
>>>     >> >>
>>>     >> >> Yes but before I got chance to push my branch, Chris pushed a
>>>     change so
>>>     >> >> when I pulled his changes, git conveniently created yet
>>>     another commit
>>>     >> >> message.  Do we really want all this extra cruft in the commit
>>>     log or do
>>>     >> >> we want to rebase against the kicad master?
>>>     >> >
>>>     >> > Start using git pull --rebase like I suggested earlier, it
>>>     would avoid
>>>     >> > that.
>>>     >> >
>>>     >>
>>>     >> I pushed Cirilo's OCE changes so hopefully I didn't fsck up the main
>>>     >> repo too badly.  Thank you Cirilo for the OCE plugin work.
>>>     >
>>>     > _______________________________________________
>>>     > Mailing list: https://launchpad.net/~kicad-developers
>>>     <https://launchpad.net/~kicad-developers>
>>>     > Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>     > Unsubscribe : https://launchpad.net/~kicad-developers
>>>     <https://launchpad.net/~kicad-developers>
>>>     > More help   : https://help.launchpad.net/ListHelp
>>>     <https://help.launchpad.net/ListHelp>
>>>
>>>     _______________________________________________
>>>     Mailing list: https://launchpad.net/~kicad-developers
>>>     <https://launchpad.net/~kicad-developers>
>>>     Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>     Unsubscribe : https://launchpad.net/~kicad-developers
>>>     <https://launchpad.net/~kicad-developers>
>>>     More help   : https://help.launchpad.net/ListHelp
>>>     <https://help.launchpad.net/ListHelp>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp



Follow ups

References