Intégration de code dans le SDK ACME FOX
Tags : acme fox
Toujours dans la série «je joue avec ma carte FOX» voici l'intégration d'un petit code dans le SDK. En d'autres termes, plutôt de de compiler les sources de mon outil, j'ai voulu l'intégrer proprement dans l'interface de configuration du SDK.
Procédure à suivre...
On commence par ajouter les sources dans un sous-répertoire du répertoire apps et on ajoute un Makefile qui va bien :
AXIS_USABLE_LIBS = UCLIBC GLIBC
include $(AXIS_TOP_DIR)/tools/build/Rules.axis
PROGS = vidcat
INSTDIR = $(prefix)/usr/bin
#LDLIBS = -lusb
all: $(PROGS)
$(PROGS): $(PROGS).o
$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
install: $(PROGS)
$(INSTALL) -p -o root -g root -m 0777 $(PROGS) $(INSTDIR)
clean:
rm -f $(PROGS) *.o core
On enregistre et on lance un petit make cris-axis-linux-gnu.
On se tourne ensuite vers configure-files/common/AC_common et on y ajoute :
menu "Lefinnois"
config LEFINNOIS_V4LCAPTURE
bool "Client de capture de frame V4L pour cam OV511 YUV"
default n
endmenu
Ceci permet d'ajouter le menu qui va bien dans l'interface de configuration. Reste à prendre cela en considération. Pour ce faire on tripote configure-files/devboard/devboard :
if [ "$AXIS_CONFIG_LEFINNOIS_V4LCAPTURE" = "y" ]; then
sub_no_fetch apps/v4lcapture
fi
Et voilà. L'affaire est dans le sac. Un petit coup de ./configure et le Makefile est mis à jour avec le répertoire apps/v4lcapture. Un coup d'oeil à axis_config.h et on retrouve :
i#define AXIS_CONFIG_LEFINNOIS_V4LCAPTURE 1
Petite compilation avec un simple make et voilà, tout est en place :
% find . -name vidcat ./apps/v4lcapture/vidcat ./target/cris-axis-linux-gnu/usr/bin/vidcat