Wpis z mikrobloga

#naukaprogramowania #programowanie #cpp #linux

kiedyś widziałem Makefile, który sprawdzał które pliki zedytowałem, robił ich pliki z rozszerzeniem .o, i linkował w jeden plik do odpalenia. Pozwalało to nie kompilować na nowo plików których nie zmieniałem, co oszczędzało kupę czasu. Jak taki plik napisać?

Mój aktualny makefile:
CC=g++
LINKERFLAGS=-lSDL2 -lSDL2gfx -lSDL2image
COMPILERFLAGS=-Wall -pedantic -Wextra -g -std=c++20
INPUT=src/main.cpp src/Engine/Engine.cpp src/Object/Object.cpp src/functions.cpp
OUTPUT=Output/Game

target:
$(CC) $(INPUT) $(LINKERFLAGS) $(COMPILERFLAGS) -o $(OUTPUT)
  • 13
via Wykop Mobilny (Android)
  • 1
@RedveKoronny: dlaczego? Właśnie ta funkcjonalność oferuje cmake. Jak mu podasz listę plików to sam będzie kontrolować czy są jakieś zmiany. Bez sensu klepac samemu całego makefile z podziałem na etapy budowania. To samo oferuje cmake jak mu podasz jako parametr żeby generował makefile
stare cmake dla mnie jest nieprzyjemne, nowe jest nieco lepsze, natomiast meson wygląda dość zacnie (i też używa ninja jako backendu).