summaryrefslogtreecommitdiff
path: root/libguile/filesys.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2018-06-14 22:16:01 +0200
committerAndy Wingo <wingo@pobox.com>2018-06-14 22:20:47 +0200
commit83584ef23105be514c474ca0a1f107d681888d5d (patch)
tree52b924cabc24d4216123c40baa2ccd26f4ad089d /libguile/filesys.c
parentceaf782770b597f4eb31a4fca65a75ab220aa47c (diff)
downloadguile-83584ef23105be514c474ca0a1f107d681888d5d.tar.gz
Fix libguile subcomponent headers not to include <libguile.h>
* libguile/bytevectors.h: Include uniform.h, for use in the macros. * libguile/extensions.h: Include libpath.h, for the SCM_EFFECTIVE_VERSION, which is almost always used with these routines. * libguile/frames.h: * libguile/instructions.h: * libguile/intrinsics.h: * libguile/loader.h: * libguile/programs.h: * libguile/vm.h: Include <libguile/__scm.h> instead of <libguile.h>. Cuts a circular include, but also precipitates a lot of maintenance in the .c files. * libguile/*.c: Update C files to add needed all needed includes that before were getting automatically pulled in by the indirect inclusion of libguile.h.
Diffstat (limited to 'libguile/filesys.c')
-rw-r--r--libguile/filesys.c72
1 files changed, 35 insertions, 37 deletions
diff --git a/libguile/filesys.c b/libguile/filesys.c
index e39dc4a0d..f235ebb97 100644
--- a/libguile/filesys.c
+++ b/libguile/filesys.c
@@ -1,5 +1,5 @@
/* Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2006,
- * 2009, 2010, 2011, 2012, 2013, 2014, 2016, 2017 Free Software Foundation, Inc.
+ * 2009, 2010, 2011, 2012, 2013, 2014, 2016, 2017, 2018 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@@ -32,37 +32,26 @@
#endif
#include <alloca.h>
+#include <dirent.h>
#include <dirname.h>
-
-#include <stdlib.h>
-#include <stdio.h>
#include <errno.h>
+#include <fcntl.h>
+#include <full-read.h>
+#include <full-write.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
-#include "libguile/_scm.h"
-#include "libguile/smob.h"
-#include "libguile/fdes-finalizers.h"
-#include "libguile/feature.h"
-#include "libguile/fports.h"
-#include "libguile/strings.h"
-#include "libguile/iselect.h"
-#include "libguile/vectors.h"
-#include "libguile/dynwind.h"
-#include "libguile/ports.h"
-#include "libguile/ports-internal.h"
-
-#include "libguile/validate.h"
-#include "libguile/filesys.h"
-#include "libguile/load.h" /* for scm_i_mirror_backslashes */
+#ifdef HAVE_DIRECT_H
+#include <direct.h>
+#endif
-
#ifdef HAVE_IO_H
#include <io.h>
#endif
-#ifdef HAVE_DIRECT_H
-#include <direct.h>
-#endif
-
#ifdef TIME_WITH_SYS_TIME
# include <sys/time.h>
# include <time.h>
@@ -74,8 +63,6 @@
# endif
#endif
-#include <unistd.h>
-
#ifdef LIBC_H_WITH_UNISTD_H
#include <libc.h>
#endif
@@ -84,29 +71,40 @@
#include <string.h>
#endif
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
#ifdef HAVE_PWD_H
#include <pwd.h>
#endif
-#include <dirent.h>
-
-#define NAMLEN(dirent) strlen ((dirent)->d_name)
-
#ifdef HAVE_SYS_SENDFILE_H
# include <sys/sendfile.h>
#endif
+#include "libguile/_scm.h"
+#include "libguile/async.h"
+#include "libguile/dynwind.h"
+#include "libguile/fdes-finalizers.h"
+#include "libguile/feature.h"
+#include "libguile/filesys.h"
+#include "libguile/fports.h"
+#include "libguile/iselect.h"
+#include "libguile/load.h" /* for scm_i_mirror_backslashes */
+#include "libguile/ports-internal.h"
+#include "libguile/ports.h"
+#include "libguile/posix.h"
+#include "libguile/smob.h"
+#include "libguile/srfi-13.h"
+#include "libguile/strings.h"
+#include "libguile/validate.h"
+#include "libguile/vectors.h"
+
+
+
+#define NAMLEN(dirent) strlen ((dirent)->d_name)
+
/* Glibc's `sendfile' function. */
#define sendfile_or_sendfile64 \
CHOOSE_LARGEFILE (sendfile, sendfile64)
-#include <full-read.h>
-#include <full-write.h>
-