aus *.h ins makefile

Gast #236648
Lesenswert?
• ▲
▼
Hi!

Ich möchte gerne aus einer c-header Datei "#defines" in das makefile
übernehmen. Ich hab schon gesucht, aber nicht gefunden, wie (und ob??)
das geht.

Probiert hab ich's, aber es kappt so nicht:

Hier z.B. das define BOOT_START
(in Memdef.h definiert: #define BOOT_START 0x7000)

Makefileauszug:

  ....

  include C:\AVR\Projects\Memdef.h

  ...
  ...

  # Place -I options here
  CINCS = -IBOOT_START=BOOT_START #Liegt hier der Fehler??

  ...
  ...

  LDFLAGS += -Wl,--section-start=.text=$(BOOT_START)

Fehlermeldung: missing argument(s) to option "--section-start"

Kann mir jemand helfen? Denn "andersrum" vom makefile in C gehts ja
auch!

VG Tobi
Gast #236649
Lesenswert?
• ▲
▼
Andersrum wirds wohl eher gehen.

Makefile:

[..]
BOOTSTART = 0x7000
[..]
# Place -D or -U options here
CDEFS = -DF_CPU=$(F_CPU)UL -DBOOTSTART=$(BOOTSTART)
[..]

Memdef.h:

#define BOOT_START (BOOTSTART)
[..]

Die Linkerflag-Zeile (wasn Wort :) musst Du Dir nochmal selber durch
den Kopf gehen lassen, da hab ich jetzt vorm Essen keine Lust mehr zu
;)
Gast #236650
Lesenswert?
• ▲
▼
Hi OldBug!

Vielen Dank, aber sorum bringts mir nicht viel. Ich hab 2 Makefiles
(Bootloader + Applikation), die aus EINER gemeinsamen Header-Datei
lesen sollen. (Dann müsste ich bei einer Änderung nur 1 Header-Datei
ändern und nicht 2 Makefiles)
Gast #236651
Lesenswert?
• ▲
▼
Aufbauend auf Oldbugs Vorschlag: eine "Makevariablen-Definitionsdatei"
erzeugen, diese mit include in die beiden makefiles einbinden.
Weitergabe der Werte wie oben skizziert. Damit muss nur eine Datei
veraendert werden, die in beiden "makes" genutzt werd.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren