Loading ...
Sorry, an error occurred while loading the content.

Re: macvim OS X 10.9 Mavericks build

Expand Messages
  • Felix Bünemann
    Can we get this patch included, now that 10.9 is GM? -- -- You received this message from the vim_mac maillist. Do not top-post! Type your reply below the
    Message 1 of 43 , Oct 6, 2013
    • 0 Attachment
      Can we get this patch included, now that 10.9 is GM?

      --
      --
      You received this message from the "vim_mac" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php

      ---
      You received this message because you are subscribed to the Google Groups "vim_mac" group.
      To unsubscribe from this group and stop receiving emails from it, send an email to vim_mac+unsubscribe@....
      For more options, visit https://groups.google.com/groups/opt_out.
    • Bram Moolenaar
      ... Then configure wouldn t find it. So one #ifdef would be sufficient. So, these version checks only make sense when not using the configure defined symbol
      Message 43 of 43 , Nov 2, 2013
      • 0 Attachment
        Felix Buenemann wrote:

        > Am 02.11.2013 um 23:40 schrieb Bram Moolenaar <Bram@...>:
        > > Kazunobu Kuriyama wrote:
        > >> On Nov 3, 2013, at 6:09 AM, Bram Moolenaar <Bram@...> wrote:
        > >>>
        > >>> Felix Buenemann wrote:
        > >>>> Am 01.11.2013 um 08:27 schrieb Kazunobu Kuriyama <kazunobu.kuriyama@...>:
        > >>>>> On Nov 1, 2013, at 12:47 PM, Bram Moolenaar <Bram@...> wrote:
        > >>>>>>
        > >>>>>> Felix Buenemann wrote:
        > >>>>>>> Am 27.10.2013 um 16:02 schrieb Bram Moolenaar <Bram@...>:
        > >>>>>>>> Björn wrote:
        > >>>>>>>>> On Mon, Oct 21, 2013 at 12:14 AM, Felix Buenemann wrote:
        > >>>>>>>>>> Am 19.10.2013 um 18:54 schrieb björn:
        > >>>>>>>>>>> On Sun, Oct 13, 2013 at 11:16 PM, Felix Bünemann wrote:
        > >>>>>>>>>>>> Am Mittwoch, 9. Oktober 2013 20:25:49 UTC+2 schrieb björn:
        > >>>>>>>>>>>>> On Wed, Oct 9, 2013 at 12:18 AM, Felix Bünemann wrote:
        > >>>>>>>>>>>>>> I'm pretty sure that AvailabilityMacros.h is available on all versions of OS
        > >>>>>>>>>>>>>> X, because it's copyright header states 2001-20xx which matches the OS X
        > >>>>>>>>>>>>>> 10.0 release timeline. Is the os_mac.h code also targeting OS 9? In that
        > >>>>>>>>>>>>>> case we should add a configure check.
        > >>>>>>>>>>>>>
        > >>>>>>>>>>>>> Yes, pre-OS X should be supported. If there is a suitable #ifdef
        > >>>>>>>>>>>>> check for that, then it should be possible to submit as a patch to
        > >>>>>>>>>>>>> mainline Vim.
        > >>>>>>>>>>>>
        > >>>>>>>>>>>> OK, I've updated the patch with a configure check:
        > >>>>>>>>>>>> https://gist.github.com/felixbuenemann/6150257
        > >>>>>>>>>>>
        > >>>>>>>>>>> This looks good to me ... but should we perhaps be checking for
        > >>>>>>>>>>> "Availability.h" instead as that is what is used on Mavericks (and
        > >>>>>>>>>>> earlier OS X versions did not need explicit inclusion of
        > >>>>>>>>>>> AvailabilityMacros.h)?
        > >>>>>>>>>>
        > >>>>>>>>>> The macros used in the vim codebase are defined in AvailabilityMacros.h not Availability.h.
        > >>>>>>>>>> Availability.h has similar but not the same macros, so using it would require cluttering the code with even more ifdefs.
        > >>>>>>>>>
        > >>>>>>>>> OK. Well, then I think this solves the problem of compiling on OS X
        > >>>>>>>>> 10.9 neatly and that it could be included in mainline Vim.
        > >>>>>>>>>
        > >>>>>>>>> Bram, can you please consider this patch for inclusion. It should
        > >>>>>>>>> apply cleanly (I just tried myself) and it automatically solves the
        > >>>>>>>>> problem of us having to know exactly when this header was made
        > >>>>>>>>> available. I've pasted it below for your convenience. Note that
        > >>>>>>>>> Felix Bünemann wrote the patch, not me.
        > >>>>>>>>
        > >>>>>>>> Thanks, I'll put it in the todo list.
        > >>>>>>>>
        > >>>>>>>> How about the patch that Kazunobu Kuriyama sent on Friday?
        > >>>>>>>
        > >>>>>>> Both patches should be fine. Mine uses a configure check to see if
        > >>>>>>> AvailabilityMacros.h is available while Kazonubu Kuriyama used some
        > >>>>>>> compiler defines to check if the header is needed, so his solution is
        > >>>>>>> a bit more lightweight.
        > >>>>>>
        > >>>>>> Just to be clear: So including one or the other works, but I should not
        > >>>>>> include both?
        > >>>>>>
        > >>>>>
        > >>>>> Though Björn Winckler has not replied to Bram’s email above yet, let me try to clarify.
        > >>>>>
        > >>>>> Felix Bünemann’s patch is for building VIM as a Carbon application, while mine is for that as a plain UNIX application, I mean, the latter lets VIM depend only on universal libc and ncurses (and additionally X11) stuff, not on any API such as Carbon or Quartz peculiar to Mac.
        > >>>>>
        > >>>>> That makes a big difference in keyboard response, but this is another story...
        > >>>>>
        > >>>>> From practical and technical points of view, I think both of the patches won’t conflict each other because his patch is mainly for os_mac.h while mine is only for os_unix.c. No intersection, no conflict, though his solution uses the configure script which affects the whole build procedure, thus making it harder to evaluate possible unfavorable impact on the build.
        > >>>>>
        > >>>>> Each of the patches will do for its own purpose.
        > >>>>>
        > >>>>> Hopefully, this clarifies the issue.
        > >>>>>
        > >>>>> Regards,
        > >>>>> KK
        > >>>>
        > >>>> Are we talking about the same patches? I was referring to the patch you send to the vim_dev list with the subject "[patch] src/os_unix.c (for build on Mac OS X 10.9 Mavericks)“.
        > >>>>
        > >>>> To compare https://gist.github.com/6150257 (my patch) and https://gist.github.com/felixbuenemann/7283250 (KK’s patch).
        > >>>>
        > >>>> I think they achieve exactly the same think and the only difference is
        > >>>> that my patch uses configure to check if AvailabilityMacros.h is
        > >>>> available, while KK’s patch uses some existing preprocessor macros.
        > >>>> This means that only one of the patches should be used.
        > >>>
        > >>> I sent out two patches that combine them, using the configure check for
        > >>> Kazonubu's patch as well. Please check it works this way.
        > >>
        > >> Bram,
        > >>
        > >> Please include my patch as it was; otherwise, it won’t work as expected. In fact, Patch 7.4.056 fails to compile os_unix.c.
        > >>
        > >> Let me clarify my point in another way: Felix Bünemann’s patch doesn’t cover the case where the configuration option -—disable-darwin is chosen in the build on the Mac.
        > >>
        > >> I’d like to remind you of Section 1.2 of src/INSTALLmac.txt, that is, there is another way to build vim differently from that of MacVim or alike.
        > >>
        > >> That’s why I sent my patch to vim_dev, not to mac_vim; the patch fixes a problem which is almost irrelevant to MacVim.
        > >
        > > Hmm, why is that configure check inside
        > > "if test "$enable_darwin" = "yes"; then“?
        >
        > It’s inside that block because it seemed the most appropriate place to put it when I wrote that code and I wasn’t aware of the fact that you can compile vim with disable-darwin on OS X.
        >
        > > Checking for header files should be done by configure. using #ifdefs is
        > > bound to break somewhere somewhen.
        > >
        > > What if we move the configure check outside of that "if"? Or pehaps it
        > > should go at the toplevel?
        >
        > That should work.
        >
        > > Looking at it again, I wonder why this doesn't use the normal way of
        > > AC_CHECK_HEADER:
        > >
        > > AC_CHECK_HEADER(AvailabilityMacros.h, HAVE_AVAILABILITYMACROS_H = 1)
        > >
        > > Also, why protect the #include with the version check,
        > > __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__. What happens if we leave
        > > that out?
        >
        > Well there is the remote case of Mac OS X 10.0 and 10.1 where
        > AvailabilityMacros.h is missing

        Then configure wouldn't find it. So one #ifdef would be sufficient.
        So, these version checks only make sense when not using the configure
        defined symbol but checking for the APPLE macro.

        --
        Sometimes I think the surest sign that intelligent life exists elsewhere
        in the universe is that none of it has tried to contact us. (Calvin)

        /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
        /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
        \\\ an exciting new programming language -- http://www.Zimbu.org ///
        \\\ help me help AIDS victims -- http://ICCF-Holland.org ///

        --
        --
        You received this message from the "vim_mac" maillist.
        Do not top-post! Type your reply below the text you are replying to.
        For more information, visit http://www.vim.org/maillist.php

        ---
        You received this message because you are subscribed to the Google Groups "vim_mac" group.
        To unsubscribe from this group and stop receiving emails from it, send an email to vim_mac+unsubscribe@....
        For more options, visit https://groups.google.com/groups/opt_out.
      Your message has been successfully submitted and would be delivered to recipients shortly.