Hi Marco,

I am sorry that you didn’t realize that there was problems with the OS X builds.
I am trying to help, and to do so, I took the responsibility to build new BZR 
revs on OS X as often as possible for me.
I was struggling to build, so I posted questions on this Mailing list and on 
the kicad-user list.
I received help from various people, and finally I succeeded in my builds, but 
with quite a few gotchas left to resolve.
Dick is really the one who spent time with me, and together we improved the OS 
X process, but it seems that it is broken again. 
I am currently traveling to visit my family (new grand-son), so until may 10th, 
I will not have as much time as I used to in order to do a new OS X build 
several times a week as I was doing before.
I tried to use the KicadOSXBuilder script from github, but never reached the 
end of the script. It crashed on step 5.

So I decided to start from scratch. For OS X build, the Cmake is still badly 
broken, as the build will not complete as downloaded from the repository. So I 
created a Bash script to do some repairs of the process (thanks to Adam and 
Dick mostly).
As currently existing, the "make install” process is still broken because the 
OS X bundles end-up in a bin directory, which is not OS X standard behavior. 
Thanks to Dick help, I had a good build with a few symlinks to have only one 
copy of the kiface files.
This was until 4810 to 4817. I tried to build yesterday (I forgot the BZR 
number) with a fresh install to create a new baseline in order to test the 
patch from Dick, but I failed miserably, as I could not build anymore.
Tomorrow Monday, I will try to get some time to do a new build, and will report 
here my findings.
I am using the latest version of the tools (OS X 10.9.1 - Xcode 5.1 - Developer 
tools )
To clear the air about the 3 versions of kiface, we were looking at the result 
of the install in the /Applications/KiCad directory.
There was one copy of the kiface files in that directory with all the *.app 
bundles, and another one kiface file in each of the bundles.
That makes for two copies. Then in order to work, we needed a kiface for 
eeschema, cvpcb and pcbnew in the kicad bundle. That’s the third copy.
With Dick help, I deleted all the kiface files from the install directory 
(/Applications/KiCad), and added the 3 symlinks in the kicad bundle.
So I am saying that the Cmake process needs to be fixed in order to have a 
clean build under OS X, and also a clean install.
Then we will be able to create a distribution process for OS X users that 
cannot or do not want to build, but would like to use Kicad on OS X natively.

Jean-Paul

 
On Apr 27, 2014, at 8:25 PM, Marco Serantoni <[email protected]> wrote:

> 
> On 27/apr/2014, at 23:36, Dick Hollenbeck <[email protected]> wrote:
>>> Dick 
>>> I’m there, i wish ask to you and bug reporters to send a mail in CC 
>>> directly to me if there are urgent and important things about OSX.
>>> I’ven always the time to read the Developer ML during my work peaks, sorry.
>>> 
>>>> Marco (or in his continued absence, any other OSX developer),
>>>> 
>>>> 1)
>>>> After reading for a few minutes about app bundles on wikipedia, I am 
>>>> thinking we can
>>>> eliminate the copy of the *.kiface file which is up at the directory where 
>>>> the *.app files
>>>> exist.
>>>> 
>>>> Do you agree?
>>>> 
>>>> If so, please look at this patch as a proposed strategy for all but the 
>>>> kicad.app.  This
>>>> only deals with pcbnew.app as a trial balloon.  The trick is to build the 
>>>> *.kiface module
>>>> down in the bundle right out of the get go.  I am curious if it gets 
>>>> copied properly
>>>> during the install.  I have no way to test that since this is OSX CMake 
>>>> specific behavior.
>>> 
>>> Dick why you wish do that, which is the improvement that that could do to 
>>> the current way ?
>>> The current arrangement works nice with 3 releases of OSX testing it all 
>>> will mean days of testing.
>> 
>> This is in the thread between me and Jean-Paul.  Having a *.kiface file in 
>> the same place
>> as the *.app is located, and then again two directories down seemed sloppy 
>> to me.  So
>> clearly neither Jean-Paul or myself thought it was a good idea and 
>> unnecessary for his
>> version of OSX.
>> 
>> Is this needed for a particular version of OSX, or was it just as quick, 
>> sloppy hack to
>> get the kiface in any place it *might* be needed?
> 
> Uh i’m sorry that I misunderstand, i’vent understand that was a private 
> dialog about OSX proceedings.
> UI Binaries in OSX are distributed only in the bundles, the rest are only an 
> intermediate files used for the build, like object files.
> 
> 
>>>> 2)
>>>> For the kicad.app/Contents/MacOS/ directory, I would suggest we install 
>>>> symlinks with
>>>> these names
>>>> 
>>>> _pcbnew.kiface, _eeschema.kiface, _cvpcb.kiface to the real deals up and 
>>>> over in the
>>>> 
>>>> pcbnew.app/Contents/MacOS directory equivalents.
>>>> 
>>>> I don't know how to do this with CMake yet.  But we should try it manually 
>>>> first.  This
>>>> will leave us with one copy of each *.kiface binary.
>>>> 
>>>> I think I know how to create the symlinks in the build directory copy of 
>>>> the bundle, so I
>>>> wonder if during install these would get transformed to actual full copies.
>>>> 
>>>> The difficulty is that the ${KIFACE_BIN} variable does not get expanded 
>>>> before the
>>>> install() steps are actually done.  In fact it looks like it happens 
>>>> inside the install()
>>>> steps.  So there's no way to get an expanded variable during installation.
>>>> 
>>>> So let's hope setting up the symlinks in the build dir will get carried 
>>>> into the install dir.
>>> 
>>> If i’ve understood well the point 1) is propaedeutic for this step.
>>> This makes the debug also more difficult and render impossible make 
>>> symbolic links in the build tree.
>>> /product/pcbnew/pcbnew.app/[…]
>>> is different of in place
>>> /Applications/Kicad/pcbnew.app/[…]
>>> There is a directory level of difference with the consequent difference in 
>>> the “relative path” that is the strategy that we should point to and we 
>>> shall pass to the ln command.
>>> 
>>> Moreover, we will introduce a dependency of the bundles to another one.
>> 
>> There is only one Kicad application as far as I am concerned.  Bundles are 
>> something that
>> gets in my way, and would be like treating eeschema and pcbnew as two 
>> different linux
>> packages.  They are not.  It is one application suite, made even more 
>> tightly bound by the
>> KIWAY.
>> 
>> So I don't see your argument, at least not based on bundles.  However I 
>> suffer no
>> particular loss if Mac users want to use more disk space than needed, and 
>> you want another
>> copy of the *.kiface files in the kicad.app tree.  And I remind the list, 
>> that this would
>> bring the total under your scheme to 3 copies of each *.kiface, vs. one copy 
>> of each using
>> my patch, if it works.
>> 
>> Really I don't care.  However, I do find it disrespectful that after I spent 
>> a whole day
>> with Jean-Paul offline solving the issues for him on his machine manually, 
>> that no one has
>> had the courtesy to actually try my patch to see if it even works.
>> 
>> This is clearly another example of why the disrespect of my time around here 
>> has gotten
>> intolerable.
> 
> Each binary is a single application, each application is hosted in a bundle, 
> each bundle is a single ICON.
> This is the OS architecture.
> There aren’t 3 copies, who says that hasn’t understood well what happens.
> 
> 
> As you can see in the later message i’ve followed your idea, i’ve bent the 
> system to symbolic link the kifaces.
> I’ve worked 3 months to make a build system that support your kiface 
> interface, that was blueprinted and acted without screening the work impact 
> on the OSX and the work needed to make it work, I’m still supporting it as 
> you have seen letting work again the USELESS OSX in few hours from my 
> involvement.
> I’ve supported and i’m still supporting your project: I don’t call this kind 
> of behavior disrespectful, i’ve spent 3 months to support your blueprint. 
> 
> I appreciate that you are now supporting also privately and in active manner 
> the OSX users, I think we could spend better our efforts trying to coordinate 
> us: filing a bug report and sollecitate an involvement/coordination with who 
> is caring that side of Kicad could help to increase our product/effort ratio.
> 
> I’m so disrespectfully that i wish to assets it with you there:
> macbook:product marco$ find . -name "*.kiface"
> ./cvpcb/_cvpcb.kiface
> ./cvpcb/cvpcb.app/Contents/MacOS/_cvpcb.kiface
> ./eeschema/_eeschema.kiface
> ./eeschema/eeschema.app/Contents/MacOS/_eeschema.kiface
> ./gerbview/_gerbview.kiface
> ./gerbview/gerbview.app/Contents/MacOS/_gerbview.kiface
> ./kicad/kicad.app/Contents/MacOS/_cvpcb.kiface
> ./kicad/kicad.app/Contents/MacOS/_eeschema.kiface
> ./kicad/kicad.app/Contents/MacOS/_pcbnew.kiface
> ./pagelayout_editor/_pl_editor.kiface
> ./pagelayout_editor/pl_editor.app/Contents/MacOS/_pl_editor.kiface
> ./pcb_calculator/_pcb_calculator.kiface
> ./pcb_calculator/pcb_calculator.app/Contents/MacOS/_pcb_calculator.kiface
> ./pcbnew/_pcbnew.kiface
> ./pcbnew/pcbnew.app/Contents/MacOS/_pcbnew.kiface
> 
> Describing that:
> ./cvpcb/_cvpcb.kiface <— build intermediate file (not distributed like .o 
> files)
> ./cvpcb/cvpcb.app/Contents/MacOS/_cvpcb.kiface <— distributed (is inside the 
> .app)
> 
> Only what is under the *.app is the bundle and is what is distributed to the 
> users.
> 
> Now to show what i said in your respectfully mail thread "BZR 4813 OS X crash 
> all the time - USELESS” that was kept private on which probably for my fault 
> i’ve missed any kind of direct involvement.
> 
> macbook:kicad marco$ ls -alrt kicad.app/Contents/MacOS/*.kiface
> lrwxr-xr-x  1 marco  staff  49 27 Apr 16:27 
> kicad.app/Contents/MacOS/_pcbnew.kiface -> 
> ../../../pcbnew.app/Contents/MacOS/_pcbnew.kiface
> lrwxr-xr-x  1 marco  staff  53 27 Apr 16:27 
> kicad.app/Contents/MacOS/_eeschema.kiface -> 
> ../../../eeschema.app/Contents/MacOS/_eeschema.kiface
> lrwxr-xr-x  1 marco  staff  47 27 Apr 16:27 
> kicad.app/Contents/MacOS/_cvpcb.kiface -> 
> ../../../cvpcb.app/Contents/MacOS/_cvpcb.kiface
> 
> As you can see from the first letter those are symbolic links to the 
> respective .kiface as you suggested and declared in the same thread
> 
> So there are NOT 3 times the same file on OSX users Mac as stated.
> 
> With the usual wish to make cleaver things,
> 
> —
> Marco
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to