Me gustaría Cabalize un proyecto Haskell para subirlo a Hackage. Consiste en un archivo .hs estándar que crea un ejecutable de arranque y ocho archivos .lhs no estándar procesados por el archivo ejecutable de arranque para generar los archivos .hs que crean el ejecutable de producción.Cómo construir y usar un ejecutable de arranque en un paquete Cabal
En otras palabras, mi proyecto es un preprocesador alfabetizado personalizado (con marcado HTML, preparación de código, aquí documentos) que está escrito en sí mismo. Depende de una versión de arranque que puede traducir el código alfabetizado para la versión de producción, pero que no es adecuado para uso general. Entonces no deseo que quiera que la versión de arranque sea un paquete separado; está destinado a ser usado solo una vez, aquí.
He estado usando un Makefile, que es posible en Cabal pero no en el espíritu de Cabal. ¿Cuál es una forma limpia de hacer esto, que aprovecha al máximo la generalidad de Cabal? No he visto ninguna sugerencia para esto en la documentación en línea, salvo la reescritura de Distribution.Simple o el uso de un Makefile.
¡Agradable! Estoy experimentando con esto ahora. Mi código de preprocesador de arranque es bastante corto; ¡Una opción sería simplemente incluirla en Setup.hs! – Syzygies