1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
   | VSN = 1.1
INSTALL_DIR=serial-$(VSN)
FULL_INSTALL_DIR=$(DESTDIR)/erlang/lib/$(INSTALL_DIR)
 
WARNING_OPTIONS =
LANGUAGE_OPTIONS = 
COMPILER_OPTIONS = -g 
 
CFLAGS   = $(WARNING_OPTIONS) $(LANGUAGE_OPTIONS) $(COMPILER_OPTIONS)
 
######################################################################
 
HEADER_FILES = src/serial.h
SOURCE_FILES = src/serial.c
 
OBJECT_FILES = $(SOURCE_FILES:.c=.o)
 
######################################################################
 
ERL_FILES = $(wildcard src/*.erl)
BEAM_FILES = $(patsubst src/%.erl, ebin/%.beam, $(ERL_FILES))
 
######################################################################
 
all: priv/bin/serial $(BEAM_FILES)
 
install: all
	@[ -n "$(DESTDIR)" ] || (echo "Set DESTDIR before running the install target."; false)
	install -d $(FULL_INSTALL_DIR)/ebin
	install -d $(FULL_INSTALL_DIR)/priv/bin
	install -d $(FULL_INSTALL_DIR)/src
	install -m 644 ebin/* $(FULL_INSTALL_DIR)/ebin
	install -m 755 priv/bin/* $(FULL_INSTALL_DIR)/priv/bin
	install -m 644 src/* $(FULL_INSTALL_DIR)/src
 
ebin/%.beam: src/%.erl ebin
	erlc -o ebin $<
 
ebin:
	mkdir -p ebin
 
priv/bin:
	mkdir -p priv/bin
 
priv/bin/serial: $(OBJECT_FILES) priv/bin
	mkdir -p priv/bin
	$(CC) -o $@ $(LDFLAGS) $(OBJECT_FILES) $(LDLIBS)
 
clean:
	rm -f priv/bin/serial $(OBJECT_FILES) $(BEAM_FILES)
 
serial.o: serial.c serial.h
 
echo-version:
	@echo $(VSN)  | 
Partager