mes arreglos als makefiles i cmakes
This commit is contained in:
42
Makefile
42
Makefile
@@ -1,34 +1,22 @@
|
||||
# Makefile sin espacios adicionales y con sintaxis minimalista
|
||||
CXXFLAGS:=-std=c++20 -Wall -Os -ffunction-sections -fdata-sections
|
||||
LDFLAGS:=-lSDL3
|
||||
SOURCE:=demo1_pixels_wave.cpp
|
||||
EXECUTABLE:=demo1_pixels_wave
|
||||
RM:=rm -f
|
||||
# Variables comunes
|
||||
SOURCE := demo1_pixels_wave.cpp
|
||||
EXECUTABLE_NAME := demo1_pixels_wave
|
||||
CXXFLAGS := -std=c++20 -Wall -Os -ffunction-sections -fdata-sections # Opciones comunes de compilación
|
||||
LDFLAGS := -lSDL3 # Flags de enlace comunes
|
||||
OUTPUT_EXT :=
|
||||
|
||||
# Detectar plataforma
|
||||
# Detectar plataforma y configurar
|
||||
ifeq ($(OS),Windows_NT)
|
||||
PLATFORM:=windows
|
||||
LDFLAGS+=-lmingw32 -lws2_32
|
||||
EXE_EXT:=.exe
|
||||
LDFLAGS += -lmingw32 -lws2_32
|
||||
OUTPUT_EXT := .exe
|
||||
else
|
||||
UNAME_S:=$(shell uname -s)
|
||||
ifeq ($(UNAME_S),Linux)
|
||||
PLATFORM:=linux
|
||||
EXE_EXT:=.out
|
||||
endif
|
||||
ifeq ($(UNAME_S),Darwin)
|
||||
PLATFORM:=macos
|
||||
EXE_EXT:=.out
|
||||
endif
|
||||
OUTPUT_EXT := .out
|
||||
endif
|
||||
|
||||
# Regla principal
|
||||
all: $(EXECUTABLE)
|
||||
# Regla principal: compilar el ejecutable
|
||||
all:
|
||||
$(CXX) $(SOURCE) $(CXXFLAGS) $(LDFLAGS) -o $(EXECUTABLE_NAME)$(OUTPUT_EXT)
|
||||
|
||||
# Compilar
|
||||
$(EXECUTABLE):
|
||||
$(CXX) $(SOURCE) $(CXXFLAGS) $(LDFLAGS) -o $(EXECUTABLE)$(EXE_EXT)
|
||||
|
||||
# Limpiar
|
||||
# Regla para limpiar archivos generados
|
||||
clean:
|
||||
$(RM) $(EXECUTABLE)*
|
||||
rm -f $(EXECUTABLE_NAME)$(OUTPUT_EXT)
|
||||
Reference in New Issue
Block a user