From efe73e143ad8997a791b895c9ee21a68b6570429 Mon Sep 17 00:00:00 2001 From: Thomas Martitz Date: Tue, 31 Jul 2012 10:33:27 +0200 Subject: Fix database tool. It was also broken functionally, probably since a while.So restore the functionality. Run it on the dap, the tcd files will be placed into .rockbox folder. Change-Id: Id7a6ce4389dfaf99799258902be80d630af0601c --- tools/database/database.c | 29 ++++++++++++++++-------- tools/database/database.make | 54 ++++++++++++++------------------------------ 2 files changed, 37 insertions(+), 46 deletions(-) (limited to 'tools/database') diff --git a/tools/database/database.c b/tools/database/database.c index 0f9304eb0a..30f1c39626 100644 --- a/tools/database/database.c +++ b/tools/database/database.c @@ -2,26 +2,37 @@ #include #include +#include #include + +#include "config.h" #include "tagcache.h" +#include "dir.h" + +/* This is meant to be run on the root of the dap. it'll put the db files into + * a .rockbox subdir */ int main(int argc, char **argv) { + (void)argc; + (void)argv; + + errno = 0; + if (mkdir(ROCKBOX_DIR) == -1 && errno != EEXIST) + return 1; + + /* / is actually ., will get translated in io.c + * (with the help of sim_root_dir below */ + const char *paths[] = { "/", NULL }; tagcache_init(); - tagcache_build("."); + do_tagcache_build(paths); tagcache_reverse_scan(); return 0; } -/* stub to avoid including all of apps/misc.c */ -bool file_exists(const char *file) -{ - struct stat s; - if (!stat(file, &s)) - return true; - return false; -} +/* needed for io.c */ +const char *sim_root_dir = "."; /* stubs to avoid including thread-sdl.c */ #include "kernel.h" diff --git a/tools/database/database.make b/tools/database/database.make index 49ad2ff9bc..89a4aa7d85 100644 --- a/tools/database/database.make +++ b/tools/database/database.make @@ -7,8 +7,7 @@ # $Id: checkwps.make 22680 2009-09-11 17:58:17Z gevaerts $ # -DBDEFINES=-g -DDEBUG -D__PCTOOL__ -CFLAGS+=$(DBDEFINES) +GCCOPTS += -g -DDEBUG -D__PCTOOL__ -DDBTOOL createsrc = $(shell cat $(1) > $(3); echo "\#if CONFIG_CODEC == SWCODEC" >> $(3); \ echo $(2) | sed 's/ /\n/g' >> $(3); \ @@ -21,44 +20,25 @@ SRCFILE := $(call createsrc, $(TOOLSDIR)/database/SOURCES, \ $(METADATAS), \ $(TOOLSDIR)/database/SOURCES.build) -SRC= $(call preprocess, $(SRCFILE)) +DATABASE_SRC = $(call preprocess, $(SRCFILE)) +DATABASE_OBJ = $(call c2obj,$(DATABASE_SRC)) -INCLUDES = -I$(ROOTDIR)/apps/gui \ - -I$(ROOTDIR)/firmware/export \ - -I$(ROOTDIR)/firmware/include \ - -I$(ROOTDIR)/apps \ - -I$(ROOTDIR)/apps/recorder \ - -I$(ROOTDIR)/lib/rbcodec \ - -I$(ROOTDIR)/lib/rbcodec/metadata \ - -I$(ROOTDIR)/lib/rbcodec/dsp \ - -I$(APPSDIR) \ - -I$(BUILDDIR) \ +OTHER_SRC += $(DATABASE_SRC) -SIMINCLUDES += -I$(FIRMDIR)/target/hosted/sdl -I$(FIRMDIR)/target/hosted \ - -I$(ROOTDIR)/uisimulator/common -I$(FIRMDIR)/export -I$(BUILDDIR) -I$(APPSDIR) +INCLUDES += -I$(ROOTDIR)/apps/gui \ + -I$(ROOTDIR)/firmware/export \ + -I$(ROOTDIR)/firmware/include \ + -I$(ROOTDIR)/apps \ + -I$(ROOTDIR)/apps/recorder \ + -I$(ROOTDIR)/lib/rbcodec \ + -I$(ROOTDIR)/lib/rbcodec/metadata \ + -I$(ROOTDIR)/lib/rbcodec/dsp \ + -I$(APPSDIR) \ + -I$(BUILDDIR) -# Makes mkdepfile happy -GCCOPTS+=`$(SDLCONFIG) --cflags` -OLDGCCOPTS:=$(GCCOPTS) -GCCOPTS+=-D__PCTOOL__ -fno-builtin $(INCLUDES) $(SIMINCLUDES) - -LIBS=`$(SDLCONFIG) --libs` -lc -ifneq ($(findstring MINGW,$(shell uname)),MINGW) -LIBS += -ldl -endif .SECONDEXPANSION: # $$(OBJ) is not populated until after this -SIMFLAGS += $(SIMINCLUDES) $(DBDEFINES) -DHAVE_CONFIG_H $(OLDGCCOPTS) $(INCLUDES) - -$(BUILDDIR)/$(BINARY): $$(OBJ) - @echo LD $(BINARY) - $(SILENT)$(HOSTCC) $(SIMFLAGS) $(LIBS) -o $@ $+ - -$(BUILDDIR)/tools/database/../../uisimulator/%.o: $(ROOTDIR)/uisimulator/%.c - $(SILENT)mkdir -p $(dir $@) - $(call PRINTS,CC $(subst $(ROOTDIR)/,,$<))$(CC) $(SIMFLAGS) -c $< -o $@ - -$(BUILDDIR)/tools/database/database.o: $(APPSDIR)/database.c - $(SILENT)mkdir -p $(dir $@) - $(call PRINTS,CC $(subst $(ROOTDIR)/,,$<))$(CC) $(SIMFLAGS) -c $< -o $@ +$(BUILDDIR)/$(BINARY): $$(DATABASE_OBJ) + $(call PRINTS,LD $(BINARY)) + $(SILENT)$(HOSTCC) -o $@ $+ -- cgit