mantener los files make generados por Eclipse en el control de versiones, ¿hay algún problema que esperar?

trabajamos bajo Linux / Eclipse / C ++ usando los proyectos C ++ "nativos" de Eclipse (.cproject). el sistema comprende desde varios proyectos de C ++, todos guardados bajo el control de la versión svn, utilizando el complemento de subclipse integrado.

queremos tener un script que compruebe, compile y empaque el sistema, sin que tengamos que conducir este process manualmente desde eclipse, como lo hacemos ahora.

Veo que hay files makefile y de soporte generados (sources.mk, subdir.mk, etc.) dispersos, que no están bajo el control de la versión (probablemente el complemento de subclipse es "inteligente" para excluirlos). Creo que puedo ponerlos en svn y usarlos en el script que necesitamos.

sin embargo, esto se siente inestable. ¿Alguien lo ha intentado? ¿Hay algún problema que esperar? ¿Hay forms recomendadas de lograr lo que necesitamos?

NB No creo que la idea de adoptar otro sistema de compilation sea aceptada muy bien, a less que sea SUPER-suave. Somos una pequeña compañía de 4 desarrolladores corriendo a toda máquina, y cualquier sobrecarga adicional o curva de aprendizaje no será apreciada 🙂

¡Muchas gracias por adelantado!

Sé que este es un gran problema (tenía exactamente lo mismo, además: ¡mantener un espacio de trabajo de construcción en svn es un verdadero dolor!)

Problemas que veo:

  • ¡Entrarás en problemas tan pronto como alguien agregue o cambie los files de configuration del proyecto, pero no active una nueva construcción para todas las plataforms posibles! (los files make no están actualizados).
  • No existe un file de creación general, por lo que no puede usar fácilmente el order de compilation de sus proyectos que Eclipse había calculado

Por cierto: escribí un plugin de Eclipse que construye un espacio de trabajo a partir de una list (textual) de proyectos dada y luego activa la construcción. Eso es posible, pero tampoco es una tarea fácil. Lamentablemente, no puedo publicar el complemento en alguna parte porque lo escribí para mi antiguo empleador …

No recomendaría poner cosas que se generan en una herramienta externa en control de versiones. Mi frase favorita para esta táctica es "version the recipe, not the cake" . En su lugar, debe utilizar una herramienta de terceros, como su secuencia de commands, para manipular Eclipse de manera adecuada para generar estos files desde sus fonts y luego comstackrlos. Esto evita el riesgo de que uno de estos files generados automáticamente no esté sincronizado con las fonts raíz.

No estoy seguro de cuál es su umbral para "súper suave", pero es posible que desee echar un vistazo a Maven2 , que tiene un complemento para proyectos de Eclipse para hacer esto.