← Back to team overview

kicad-developers team mailing list archive

Re: OCE plugin for 3D viewer

 

2016-09-02 23:00 GMT+02:00 Wayne Stambaugh <stambaughw@xxxxxxxxx>:
> 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:
>

No. The install is just fine, it is just when you try to build against
OCE the cmake files have some bad paths. I override the install
locations in the PKGBUILD. I also don't know why OCE does it like that
on windows, but as long as I can override it by configuring it via
cmake arguments I am fine with that so far. No patching needed.

> # 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