Передача m файлов в ghc с опцией -xc в параметрах набора файлов cabal глобально - PullRequest
1 голос
/ 23 января 2011

Я пытаюсь обновить пакет glfw, чтобы использовать glfw 2.7 на Mac.Проблема заключается в том, что существует новый порт какао, который представляет файлы 'm'.

Поэтому я хотел использовать опцию -xc только для этих файлов, но я не могу понять, как заставить его работатьтолько на этих файлах 'm'.

Соответствующий раздел моего клика-файла:

if os(darwin)
  include-dirs: glfw/lib/cocoa
  frameworks:   AGL Cocoa OpenGL
  cc-options:   -msse2 
  ghc-options:  -x c                  -- **** global not just local.
  c-sources:
    glfw/lib/cocoa/cocoa_enable.m
    glfw/lib/cocoa/cocoa_fullscreen.m
    glfw/lib/cocoa/cocoa_glext.m
    glfw/lib/cocoa/cocoa_init.m
    glfw/lib/cocoa/cocoa_joystick.m
    glfw/lib/cocoa/cocoa_thread.m
    glfw/lib/cocoa/cocoa_time.m
    glfw/lib/cocoa/cocoa_window.m

Есть идеи, как я могу решить эту проблему?

Мой исходный коднаходится на https://github.com/iaefai/glfw-haskell, если вы хотите проверить его.

Ответы [ 2 ]

0 голосов
/ 25 июня 2011

Попробуйте использовать привязки GLFW-b .Я работал с автором GLFW-b, чтобы внести все необходимые изменения, чтобы 2.7 работал над OSX.Это даже работает в GHCI.

Вы можете cabal install nehe-tuts увидеть демонстрацию его работы.

0 голосов
/ 09 апреля 2011

Нет способа сделать это с помощью флага .cabal.Вам может потребоваться выполнить этап предварительной обработки вручную (например, режим make-файла или режим конфигурации).

...