Tengo esto en el archivo MAKE:
# find cpp files in subdirectories
SOURCES := $(shell find . -name '*.cpp')
Entonces quería crear FIND
un comando genérico que se comportara correctamente en Windows y Linux:
ifeq ($(OS),Windows_NT)
# WINDOWS
RM = erase /Q
FIND = ???
else
# LINUX
ifeq ($(shell uname), Linux)
RM = rm -f
# This is probably wrong too, but I have no idea how to do it right
FIND = $(find . -name '$1')
endif
endif
Por supuesto, ni siquiera sé cómo crear una plantilla de búsqueda parametrizada para Linux. Pero lo más importante es que no puedo encontrar el comando para buscar todos los archivos por patrón. Windows tiene esto:
dir * /s/b | findstr \.cpp$
Lo cual es hermoso, pero usa expresiones regulares... ¿Cómo puedo portar esto correctamente para que find se comporte bien en ambos sistemas? ¿Makefile no tiene su propio método para buscar archivos?