Excluir arquivos de origem por arquitetura ao compilar
Eu estou escrevendo um programa Go para o Windows que contém vários pacotes. Um desses pacotes está usando o CGo para chamar algumas funções definidas em alguns arquivos .h e .c. Esses arquivos .c dependem do windows.h.
Como o desenvolvimento na plataforma Windows é incrivelmente tedioso, gostaria de fazer uma simulação das funções desse arquivo e desenvolvê-lo no Linux. Mas quando tento compilar eu recebo:
fatal error: windows.h: No such file or directory
Desde que a ferramenta go tenta compilar meus arquivos dependentes do Windows. Existe alguma maneira de contornar isso? Eu sei que colocar algo como
#ifdef ..
import x
#endif
não é uma prática recomendada, mas neste caso eu preciso de algo para permitir a compilação apenas dos arquivos "Linux".