Jakym zpusobem muzu nahradit casti makra?
Mam seznam objektu:
COBJ = neco.o neco_jineho.o
a pred kazdy objekt potrebuju pridat "tmp/".
Fórum › OS - GNU / Linux
Makefile - nahrazeni casti makra
To je jedno :-) Narazil jsem na GNU make manual - je to funkce "patsubst".
EDIT: myslel jsem to nejak takhle
TARGET = katie
C = gcc -Iinc -Wall
A = nasm -f elf
COBJ = $(patsubst src/%.c,%.o,$(wildcard src/*.c))
AOBJ = $(patsubst src/%.asm,%.a,$(wildcard src/*.asm))
TCOBJ = $(patsubst %.o,tmp/%.o,$(COBJ))
TAOBJ = $(patsubst %.a,tmp/%.a,$(AOBJ))
build: kernel
all: clean build
dist: clean
@rm -f $(TARGET).tar.gz
@tar -c * > $(TARGET).tar
@gzip $(TARGET).tar
clean:
@rm -f tmp/*
image: kernel
@cp tmp/kernel iso/boot/
@mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o katie.iso iso
boot: image
@#bochs -q
@qemu -cdrom $(TARGET).iso
kernel: tmp/main.o tmp/boot.o $(TCOBJ) $(TAOBJ)
ld -T link.ld -o tmp/kernel tmp/main.o tmp/boot.o $(TCOBJ) $(TAOBJ)
tmp/main.o:
$C -c boot/main.c -o tmp/main.o
tmp/boot.o:
$A boot/boot.asm -o tmp/boot.o
$(TCOBJ):
$C -c $(patsubst tmp/%.o,src/%.c,$@) -o $@
$(TAOBJ):
$A -o $@ $(patsubst tmp/%.a,src/%.asm,$@)
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 21 hostů
Podobná vlákna
VB makra — založil samo
Makefile — založil GeorgeW
FTP klient - makra — založil yaqwsx
Instalace VBA makra — založil Keny
Moderátoři diskuze