[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux_var] [MT] make: compilare tutti i file tranne uno



Aladino ha scritto:
> nel mio make file ho questa riga
> 
> SRCS    := $(wildcard ./src/*.c)
> 
> che precisa che i file sorgenti sono tutti i files contenuti in ./src/
> che hanno estensione .c
> 
> C'e' un modo per precisare che i miei file sorgenti sono tutti quelli
> contenuti in ./src/, con estensione .c TRANNE un particolare file? (debug.c)
> 
> by aL

Mi rispondo dopo una dirtta passatami da buccia


DBG_SRC := ./src/debug.c
SRCS    := $(wildcard ./src/*.c)

ifeq ($(DEBUG), )
         SRCS    := $(filter-out $(DBG_SRC),$(SRCS))
endif

La variabile DBG_SRC contiene il percorso del file fantomatico
La variabile SRCS tutti i file sorgenti
Se la variabile d'ambiente DEBUG non e' stata definita filter-out
elimina dai file sorgenti il file debug.c

Se intendete usare una roba come questa occhi a modificare anche la
parte relativa al make clean aggiungendo

$(DBG_SRC:.c=.o)

a quello che dovete cancellare

by aL

  (--- * * * * * * * * * * * * * * * * * * * * * * ---)
Per cancellare l'iscrizione: <talking-unsubscribe at ml.linuxvar.it>
Interfaccia web di configurazione: http://ml.linuxvar.it/ml/