manu-projects / manu-cproject

1 stars 0 forks source link

Bug: Recursividad entre makefiles al compilar con static lib #24

Closed neverkas closed 2 years ago

neverkas commented 2 years ago

https://github.com/manu-projects/manu-cproject/blob/5a2bcdff8f4090681b399dd3c48f458cf0f4f007/project/Makefile#L25

neverkas commented 2 years ago

Se soluciono "temporalmente" de la siguiente manera

Solucion temporal

$(OBJ): $(DIR_OBJ)/%.o: $(DIR_SRC)/%.c $(DIR_DEP)/%.d | $(DIR_DEP)
ifneq ($(notdir $(CURDIR)),static)
    @[ -f $(DIR_STATIC_LIB)/$(DIR_BIN)/lib_mylib.a  ] || \
        $(MAKE) --no-print-directory -C $(DIR_STATIC_LIB)
endif
    @$(CC) $(DEPFLAGS) $(CPPFLAGS) $(CFLAGS) -c $(DIR_SRC)/$*.c -o $(DIR_OBJ)/$*.o
    @mv -f $(DIR_DEP)/$*.tmp.d $(DIR_DEP)/$*.d && touch $@ # se ejecuta si no hubo error de compilación

Problema GNU Make no estaria pudiendo evaluar la condicion ifeq ($(BIN_FILE_EXTENSION),.a), permite imprimir el valor de la macro pero no la toma en el condicional