farmbot_os/Makefile

42 lines
1.1 KiB
Makefile
Raw Normal View History

ALL :=
CLEAN :=
PREFIX = $(MIX_COMPILE_PATH)/../priv
BUILD = $(MIX_COMPILE_PATH)/../obj
2019-03-11 11:47:10 -06:00
# Set Erlang-specific compile and linker flags
ERL_CFLAGS ?= -I$(ERL_EI_INCLUDE_DIR)
ERL_LDFLAGS ?= -L$(ERL_EI_LIBDIR)
2019-03-11 11:47:10 -06:00
NIF_LDFLAGS += -fPIC -shared
NIF_CFLAGS ?= -fPIC -O2 -Wall
2018-12-17 14:54:10 -07:00
2019-03-11 11:47:10 -06:00
NIF=
2018-01-05 11:02:05 -07:00
2019-03-11 11:47:10 -06:00
ifeq ($(ERL_EI_INCLUDE_DIR),)
$(warning ERL_EI_INCLUDE_DIR not set. Invoke via mix)
endif
2019-03-11 11:47:10 -06:00
.PHONY: fbos_arduino_firmware fbos_clean_arduino_firmware all clean
2018-01-05 11:02:05 -07:00
2019-03-11 11:47:10 -06:00
all: $(PREFIX) $(BUILD) $(PREFIX)/build_calendar.so
2018-01-05 11:02:05 -07:00
2019-03-11 11:47:10 -06:00
clean:
$(RM) $(PREFIX)/*.so
2017-12-22 20:15:11 -07:00
fbos_arduino_firmware:
2018-06-05 15:30:11 -06:00
cd c_src/farmbot-arduino-firmware && make all BUILD_DIR=$(PWD)/_build FBARDUINO_FIRMWARE_SRC_DIR=$(PWD)/c_src/farmbot-arduino-firmware/src BIN_DIR=$(PWD)/priv
2018-02-15 09:27:11 -07:00
fbos_clean_arduino_firmware:
2018-06-05 15:30:11 -06:00
cd c_src/farmbot-arduino-firmware && make clean BUILD_DIR=$(PWD)/_build FBARDUINO_FIRMWARE_SRC_DIR=$(PWD)/c_src/farmbot-arduino-firmware/src BIN_DIR=$(PWD)/priv
2018-02-09 11:55:07 -07:00
2019-03-11 11:47:10 -06:00
$(PREFIX)/build_calendar.so: $(BUILD)/build_calendar.o
$(CC) $(ERL_LDFLAGS) $(NIF_LDFLAGS) -o $@ $<
$(BUILD)/build_calendar.o: c_src/build_calendar/build_calendar.c
$(CC) -c $(ERL_CFLAGS) $(NIF_CFLAGS) -o $@ $<
$(PREFIX):
mkdir -p $(PREFIX)
2018-02-09 11:55:07 -07:00
2019-03-11 11:47:10 -06:00
$(BUILD):
mkdir -p $(BUILD)