M Makefile => Makefile +10 -4
@@ 14,8 14,8 @@ endif
TARGET_DIR ?= /tmp/$(shell whoami)
TARGET_USER ?= root
# for use from Eduroam network use TARGET_IP=localhost and enable next line
-#SSH_OPTIONS=-o "UserKnownHostsFile=/dev/null" -o "StrictHostKeyChecking=no" -o "Port=2222"
-#SSH_GDB_TUNNEL_REQUIRED=y
+SSH_OPTIONS=-o "UserKnownHostsFile=/dev/null" -o "StrictHostKeyChecking=no" -o "Port=2222"
+SSH_GDB_TUNNEL_REQUIRED=y
SSH_OPTIONS+=-i ~/.ssh/mzapo-root-key
#SSH_OPTIONS=-i /opt/zynq/ssh-connect/mzapo-root-key
#SSH_OPTIONS=-o 'ProxyJump=ctu_login@postel.felk.cvut.cz'
@@ 24,6 24,7 @@ IMAGE_VIEWER=$(BIN_DIR)/image-viewer
LIB_PHERIPHERALS=$(BIN_DIR)/libmzapo-pheripherals.so
LIB_GUI=$(BIN_DIR)/libmzapo-gui.so
TEXT_VIEWER=$(BIN_DIR)/text-viewer
+FILE_BROWSER=$(BIN_DIR)/file-browser
ifdef COMPUTER
DEPENDENCIES=./.computer
@@ 31,12 32,13 @@ else
DEPENDENCIES=./.arm
endif
-all: $(DEPENDENCIES) image-viewer text-viewer
+all: $(DEPENDENCIES) image-viewer text-viewer file-browser
image-viewer: $(IMAGE_VIEWER)
lib-pheripherals: $(LIB_PHERIPHERALS)
lib-gui: $(LIB_GUI)
text-viewer: $(TEXT_VIEWER)
+file-browser: $(FILE_BROWSER)
$(IMAGE_VIEWER): $(DEPENDENCIES) lib-pheripherals FORCE
@make -C image-viewer
@@ 44,6 46,9 @@ $(IMAGE_VIEWER): $(DEPENDENCIES) lib-pheripherals FORCE
$(TEXT_VIEWER): $(DEPENDENCIES) lib-pheripherals lib-gui FORCE
@make -C text-viewer
+$(FILE_BROWSER): $(DEPENDENCIES) lib-pheripherals lib-gui FORCE
+ @make -C file-browser
+
$(DEPENDENCIES):
@make clean
touch $(DEPENDENCIES)
@@ 68,8 73,9 @@ run-text-viewer: copy-executable
clean:
@make -C image-viewer clean
- @make -C lib-pheripherals clean
@make -C text-viewer clean
+ @make -C file-browser clean
+ @make -C lib-pheripherals clean
@make -C lib-gui clean
$(RM) -rf $(BIN_DIR)
$(RM) -rf ./.computer ./.arm
A file-browser/.gitignore => file-browser/.gitignore +4 -0
@@ 0,0 1,4 @@
+connect.gdb
+
+obj/
+bin/
A file-browser/Makefile => file-browser/Makefile +69 -0
@@ 0,0 1,69 @@
+SRC_DIR=./src
+OBJ_DIR=./obj
+BIN_DIR?=./bin
+INC_DIR=-I./include $(INHERIT_INCLUDES)
+LIB_DIR?=
+
+ifdef COMPUTER
+ CC = clang
+else
+ CC = arm-linux-gnueabihf-gcc
+ CXX = arm-linux-gnueabihf-g++
+endif
+
+CPPFLAGS = -I .
+CFLAGS =-g -std=gnu99 -O1 -Wall -D ILI9481
+CXXFLAGS = -g -std=gnu++11 -O1 -Wall
+
+ifdef COMPUTER
+LDFLAGS = -lmzapo-pheripherals -lmagic $(shell sdl2-config --libs) -lSDL2_image
+CFLAGS += -DCOMPUTER $(shell sdl2-config --cflags)
+else
+LDFLAGS = -lmzapo-pheripherals -l :libmagic.so.1
+endif
+LDFLAGS += -Wl,-rpath,'$${ORIGIN}' $(LIB_DIR)
+
+NAME=file-browser
+BINARY=$(BIN_DIR)/$(NAME)
+
+SRC=$(wildcard $(SRC_DIR)/*.c)
+OBJ=$(patsubst $(SRC_DIR)/%.c, $(OBJ_DIR)/%.o, $(SRC))
+
+CFLAGS+=$(INC_DIR) -Wall -Werror
+CFLAGS+=$(shell sdl2-config --cflags)
+
+.PHONY: all clean
+
+all: $(BINARY)
+
+$(BINARY): $(OBJ) | $(BIN_DIR)
+ $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
+
+$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c | $(OBJ_DIR)
+ $(CC) $(CFLAGS) -c $< -o $@
+
+$(BIN_DIR) $(OBJ_DIR):
+ echo $(BIN_DIR)
+ mkdir -p $@
+
+dep: depend
+
+depend: $(SRC) $(HEADERS)
+ echo '# autogenerated dependencies' > depend
+ifneq ($(filter %.c,$(SRC)),)
+ $(CC) $(CFLAGS) $(CPPFLAGS) -w -E -M $(filter %.c,$(SRC)) \
+ >> depend
+endif
+ifneq ($(filter %.cpp,$(SRC)),)
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -w -E -M $(filter %.cpp,$(SRC)) \
+ >> depend
+endif
+
+clean:
+ $(RM) -rv $(BIN_DIR) $(OBJ_DIR)
+ $(RM) -rv .cache
+ $(RM) -rv connect.gdb
+ $(RM) -rv depend
+
+-include $(OBJ:.o=.d)
+-include depend