[osm-tile-server] 69/117: Use the settings
Ruben Undheim
rubund-guest at moszumanska.debian.org
Tue Nov 3 23:18:21 UTC 2015
This is an automated email from the git hooks/post-receive script.
rubund-guest pushed a commit to branch master
in repository osm-tile-server.
commit 95f5ca074d4a876bc9179ac34ef7781b6468b35f
Author: Ruben Undheim <ruben.undheim at gmail.com>
Date: Sun Sep 6 17:35:38 2015 +0200
Use the settings
---
src/osm-tile-server-import.c | 8 +++++++-
src/parse-settings.c | 37 ++++++++++++++++++++++++++++++-------
src/parse-settings.h | 5 ++++-
3 files changed, 41 insertions(+), 9 deletions(-)
diff --git a/src/osm-tile-server-import.c b/src/osm-tile-server-import.c
index 3d82282..d25b129 100644
--- a/src/osm-tile-server-import.c
+++ b/src/osm-tile-server-import.c
@@ -17,7 +17,13 @@ int main(int argc, char **argv)
parse_settings();
- snprintf(command,255,"osm2pgsql --slim -d %s --cache-strategy sparse -C 100 --hstore -S /usr/share/osm2pgsql/default.style %s",dbname,pbffile);
+ if(strcmp(cfg_slim,"true") == 0) {
+ snprintf(cfg_slim,10,"--slim");
+ }
+ else {
+ snprintf(cfg_slim,10,"");
+ }
+ snprintf(command,255,"osm2pgsql %s -d %s --cache-strategy %s -C %s --hstore -S /usr/share/osm2pgsql/default.style %s",cfg_slim,cfg_dbname,cfg_cache_strategy,cfg_memory,pbffile);
printf("Importing to database with this command:\n\n");
printf(" %s\n\n",command);
system(command);
diff --git a/src/parse-settings.c b/src/parse-settings.c
index 8ca9c3f..99e1870 100644
--- a/src/parse-settings.c
+++ b/src/parse-settings.c
@@ -2,7 +2,29 @@
#include <stdlib.h>
#include <string.h>
-char dbname[64];
+char cfg_dbname[64];
+char cfg_slim[64];
+char cfg_cache_strategy[64];
+char cfg_memory[64];
+
+int parse_one(const char *l, const char *cmp, char *var){
+ int len;
+ len = strlen(cmp);
+ if(strncmp(cmp,l,strlen(cmp)) == 0) {
+ if(l[7] == '\"'){
+ char *substr = strstr(l+len+1,"\"");
+ *substr = 0;
+ strncpy(var,l+len+1,63);
+ }
+ else {
+ char *substr = strstr(l+len+1,"\n");
+ *substr = 0;
+ strncpy(var,l+len,63);
+ }
+ return 0;
+ }
+ else return -1;
+}
void parse_settings()
{
@@ -15,12 +37,13 @@ void parse_settings()
if (infile == NULL) exit(-1);
while((read = getline(&linebuf, &len, infile)) != -1 ) {
const char *l = linebuf;
- if(strncmp("DBNAME=\"",l,8) == 0) {
- char *substr = strstr(l+8,"\"");
- *substr = 0;
- //printf("Read line: %s\n",linebuf+8);
- strncpy(dbname,linebuf+8,63);
- //printf("%s\n",dbname);
+ if(parse_one(l,"DBNAME=",cfg_dbname) == 0){
+ }
+ else if(parse_one(l,"SLIM=",cfg_slim) == 0){
+ }
+ else if(parse_one(l,"CACHE_STRATEGY=",cfg_cache_strategy) == 0){
+ }
+ else if(parse_one(l,"MEMORY=",cfg_memory) == 0){
}
}
fclose(infile);
diff --git a/src/parse-settings.h b/src/parse-settings.h
index 94c053b..90f609c 100644
--- a/src/parse-settings.h
+++ b/src/parse-settings.h
@@ -1,7 +1,10 @@
#ifndef INC_PARSE_SETTINGS_H
#define INC_PARSE_SETTINGS_H
-extern char dbname[64];
+extern char cfg_dbname[64];
+extern char cfg_cache_strategy[64];
+extern char cfg_memory[64];
+extern char cfg_slim[64];
void parse_settings();
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/osm-tile-server.git
More information about the Pkg-grass-devel
mailing list