Usando make para compilação multiplataforma

Atualmente, estou desenvolvendo um projeto C no Linux e Win32. O 'deliverable' é uma biblioteca compartilhada e todo o desenvolvimento é feito no Linux com a cadeia de ferramentas GNU. Estou usando um Makefile para compilar a biblioteca compartilhad

De vez em quando eu tenho que criar uma .dll no Win32 a partir do mesmo sr

Instalei o MinGW na caixa Win32 para poder usar make e getlong menos reclamações do compilador (em comparação com o MSVC). Estou numa fase em que o código src compila nas duas plataformas

Mas o Makefile Linux e o Win32 Makefile são diferentes. Estou curioso para saber como lidar melhor com isso - devo:

têm 2 makefiles, p. Makefile para linux e Makefile.WIN32 e executemake -f Makefile.WIN32 na caixa do Windows

Devo criar um alvo diferente em um único Makefile e fazer algo comomake WIN32 na caixa do Windows

Devo abandonar o make e usar o CMake (o suco vale a pena para um projeto tão simples, ou seja, uma biblioteca compartilhada)

questionAnswers(10)

yourAnswerToTheQuestion