Index: Makefile =================================================================== --- Makefile (revision 367) +++ Makefile (revision 368) @@ -29,3 +29,9 @@ cd util && make uninstall cd pcblib && make uninstall cd tutorial && make uninstall + +deb: + fakeroot debian/rules binary + +debclean: + fakeroot debian/rules clean Index: config.auto.h.in =================================================================== --- config.auto.h.in (revision 367) +++ config.auto.h.in (revision 368) @@ -260,6 +260,11 @@ print {\n\n/* Define to 1 if you have the `gdImagePng' function. */\n} print_ternary libs/gui/gd/gdImagePng/presents {#define HAVE_GDIMAGEPNG 1} {/* #undef HAVE_GDIMAGEGIF */} +print {\n\n/* Wrapper for S_ISLNK(x); always return 0 if S_ISLNK doesn't exist */\n} +switch /target/libs/fs/stat/macros/S_ISLNK + case {} print {#define WRAP_S_ISLNK(x) 0}; end; + default print [@#define WRAP_S_ISLNK(x) @/target/libs/fs/stat/macros/S_ISLNK@(x)@]; end; +end; print [@ Index: doc-rnd/TODO =================================================================== --- doc-rnd/TODO (revision 367) +++ doc-rnd/TODO (revision 368) @@ -1,5 +1,3 @@ -- check S_ISLNK() from config and fix the code! - - distorted square pin bugs: - rtree assert failure when NDEBUG is turned off - large clearance with octagon Index: scconfig/hooks.c =================================================================== --- scconfig/hooks.c (revision 367) +++ scconfig/hooks.c (revision 368) @@ -12,7 +12,10 @@ returns true if no furhter argument processing should be done */ int hook_custom_arg(const char *key, const char *value) { - if (strcmp(key, "prefix") == 0) put("/local/prefix", strclone(value)); + if (strcmp(key, "prefix") == 0) { + put("/local/prefix", strclone(value)); + return 1; + } return 0; } @@ -74,8 +77,8 @@ require("libs/gui/gd/gdImagePng/*", 0, 0); require("libs/gui/gd/gdImageGif/*", 0, 0); require("libs/gui/gd/gdImageJpeg/*", 0, 0); - - + require("libs/fs/stat/macros/*", 0, 0); + return 0; } Index: src/libpcb_fp.c =================================================================== --- src/libpcb_fp.c (revision 367) +++ src/libpcb_fp.c (revision 368) @@ -234,7 +234,7 @@ /* printf("... Found a footprint %s ... \n", subdirentry->d_name); */ #endif strcpy(fn_end, subdirentry->d_name); - if ((S_ISREG(buffer.st_mode)) || (S_ISLNK(buffer.st_mode))) { + if ((S_ISREG(buffer.st_mode)) || (WRAP_S_ISLNK(buffer.st_mode))) { pcb_fp_type_t ty; ty = pcb_fp_file_type(subdirentry->d_name); if ((ty == PCB_FP_FILE) || (ty == PCB_FP_PARAMETRIC)) { @@ -245,7 +245,7 @@ } } - if ((S_ISDIR(buffer.st_mode)) || (S_ISLNK(buffer.st_mode))) { + if ((S_ISDIR(buffer.st_mode)) || (WRAP_S_ISLNK(buffer.st_mode))) { cb(cookie, subdir, subdirentry->d_name, PCB_FP_DIR); if (recurse) { n_footprints += pcb_fp_list(fn, recurse, cb, cookie, 0);