34 lines
664 B
Makefile
34 lines
664 B
Makefile
# Makefile sin espacios adicionales y con sintaxis minimalista
|
|
CXXFLAGS:=-std=c++20 -Wall -Os -ffunction-sections -fdata-sections
|
|
LDFLAGS:=-lSDL3
|
|
SOURCE:=demo2_pixels_noise.cpp
|
|
EXECUTABLE:=demo2_pixels_noise
|
|
RM:=rm -f
|
|
|
|
# Detectar plataforma
|
|
ifeq ($(OS),Windows_NT)
|
|
PLATFORM:=windows
|
|
LDFLAGS+=-lmingw32 -lws2_32
|
|
EXE_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
|
|
endif
|
|
|
|
# Regla principal
|
|
all: $(EXECUTABLE)
|
|
|
|
# Compilar
|
|
$(EXECUTABLE):
|
|
$(CXX) $(SOURCE) $(CXXFLAGS) $(LDFLAGS) -o $(EXECUTABLE)$(EXE_EXT)
|
|
|
|
# Limpiar
|
|
clean:
|
|
$(RM) $(EXECUTABLE)*
|