mirror of https://github.com/gkostka/lwext4.git
gkostka
8 years ago
3 changed files with 0 additions and 261 deletions
@ -1,115 +0,0 @@ |
|||||
diff --git a/include/ext4_errno.h b/include/ext4_errno.h
|
|
||||
index edf89a9..a4408c7 100644
|
|
||||
--- a/include/ext4_errno.h
|
|
||||
+++ b/include/ext4_errno.h
|
|
||||
@@ -43,46 +43,74 @@ extern "C" {
|
|
||||
#include "ext4_config.h" |
|
||||
|
|
||||
#if !CONFIG_HAVE_OWN_ERRNO |
|
||||
-#include <errno.h>
|
|
||||
-#else
|
|
||||
-#define EPERM 1 /* Operation not permitted */
|
|
||||
-#define ENOENT 2 /* No such file or directory */
|
|
||||
-#define EIO 5 /* I/O error */
|
|
||||
-#define ENXIO 6 /* No such device or address */
|
|
||||
-#define E2BIG 7 /* Argument list too long */
|
|
||||
-#define ENOMEM 12 /* Out of memory */
|
|
||||
-#define EACCES 13 /* Permission denied */
|
|
||||
-#define EFAULT 14 /* Bad address */
|
|
||||
-#define EEXIST 17 /* File exists */
|
|
||||
-#define ENODEV 19 /* No such device */
|
|
||||
-#define ENOTDIR 20 /* Not a directory */
|
|
||||
-#define EISDIR 21 /* Is a directory */
|
|
||||
-#define EINVAL 22 /* Invalid argument */
|
|
||||
-#define EFBIG 27 /* File too large */
|
|
||||
-#define ENOSPC 28 /* No space left on device */
|
|
||||
-#define EROFS 30 /* Read-only file system */
|
|
||||
-#define EMLINK 31 /* Too many links */
|
|
||||
-#define ERANGE 34 /* Math result not representable */
|
|
||||
-#define ENOTEMPTY 39 /* Directory not empty */
|
|
||||
-#define ENODATA 61 /* No data available */
|
|
||||
-#define ENOTSUP 95 /* Not supported */
|
|
||||
-#endif
|
|
||||
|
|
||||
-#ifndef ENODATA
|
|
||||
- #ifdef ENOATTR
|
|
||||
- #define ENODATA ENOATTR
|
|
||||
- #else
|
|
||||
- #define ENODATA 61
|
|
||||
+ #include <errno.h>
|
|
||||
+
|
|
||||
+ #define LWEXT4_ERRNO(errno) (errno)
|
|
||||
+
|
|
||||
+ #ifndef ENODATA
|
|
||||
+ #ifdef ENOATTR
|
|
||||
+ #define ENOATTR ENOATTR
|
|
||||
+ #else
|
|
||||
+ #define ENODATA 61
|
|
||||
+ #endif
|
|
||||
#endif |
|
||||
-#endif
|
|
||||
|
|
||||
-#ifndef ENOTSUP
|
|
||||
-#define ENOTSUP 95
|
|
||||
-#endif
|
|
||||
+ #ifndef ENOTSUP
|
|
||||
+ #define ENOTSUP 95
|
|
||||
+ #endif
|
|
||||
+
|
|
||||
+ #ifndef EOK
|
|
||||
+ #define EOK 0
|
|
||||
+ #endif
|
|
||||
+
|
|
||||
+#else /* CONFIG_HAVE_OWN_ERRNO */
|
|
||||
+
|
|
||||
+ #define LWEXT4_ERRNO(errno) LWEXT4_##errno
|
|
||||
+
|
|
||||
+ enum ext4_errno {
|
|
||||
+ LWEXT4_ERRNO(EOK) = 0,
|
|
||||
+ LWEXT4_ERRNO(EPERM) = 1, /* Operation not permitted */
|
|
||||
+ LWEXT4_ERRNO(ENOENT) = 2, /* No such file or directory */
|
|
||||
+ LWEXT4_ERRNO(ESRCH) = 3, /* No such process */
|
|
||||
+ LWEXT4_ERRNO(EINTR) = 4, /* Interrupted system call */
|
|
||||
+ LWEXT4_ERRNO(EIO) = 5, /* I/O error */
|
|
||||
+ LWEXT4_ERRNO(ENXIO) = 6, /* No such device or address */
|
|
||||
+ LWEXT4_ERRNO(E2BIG) = 7, /* Argument list too long */
|
|
||||
+ LWEXT4_ERRNO(ENOEXEC) = 8, /* Exec format error */
|
|
||||
+ LWEXT4_ERRNO(EBADF) = 9, /* Bad file number */
|
|
||||
+ LWEXT4_ERRNO(ECHILD) = 10, /* No child processes */
|
|
||||
+ LWEXT4_ERRNO(EAGAIN) = 11, /* Try again */
|
|
||||
+ LWEXT4_ERRNO(ENOMEM) = 12, /* Out of memory */
|
|
||||
+ LWEXT4_ERRNO(EACCES) = 13, /* Permission denied */
|
|
||||
+ LWEXT4_ERRNO(EFAULT) = 14, /* Bad address */
|
|
||||
+ LWEXT4_ERRNO(ENOTBLK) = 15, /* Block device required */
|
|
||||
+ LWEXT4_ERRNO(EBUSY) = 16, /* Device or resource busy */
|
|
||||
+ LWEXT4_ERRNO(EEXIST) = 17, /* File exists */
|
|
||||
+ LWEXT4_ERRNO(EXDEV) = 18, /* Cross-device link */
|
|
||||
+ LWEXT4_ERRNO(ENODEV) = 19, /* No such device */
|
|
||||
+ LWEXT4_ERRNO(ENOTDIR) = 20, /* Not a directory */
|
|
||||
+ LWEXT4_ERRNO(EISDIR) = 21, /* Is a directory */
|
|
||||
+ LWEXT4_ERRNO(EINVAL) = 22, /* Invalid argument */
|
|
||||
+ LWEXT4_ERRNO(ENFILE) = 23, /* File table overflow */
|
|
||||
+ LWEXT4_ERRNO(EMFILE) = 24, /* Too many open files */
|
|
||||
+ LWEXT4_ERRNO(ENOTTY) = 25, /* Not a typewriter */
|
|
||||
+ LWEXT4_ERRNO(ETXTBSY) = 26, /* Text file busy */
|
|
||||
+ LWEXT4_ERRNO(EFBIG) = 27, /* File too large */
|
|
||||
+ LWEXT4_ERRNO(ENOSPC) = 28, /* No space left on device */
|
|
||||
+ LWEXT4_ERRNO(ESPIPE) = 29, /* Illegal seek */
|
|
||||
+ LWEXT4_ERRNO(EROFS) = 30, /* Read-only file system */
|
|
||||
+ LWEXT4_ERRNO(EMLINK) = 31, /* Too many links */
|
|
||||
+ LWEXT4_ERRNO(EPIPE) = 32, /* Broken pipe */
|
|
||||
+ LWEXT4_ERRNO(EDOM) = 33, /* Math argument out of domain of func */
|
|
||||
+ LWEXT4_ERRNO(ERANGE) = 34, /* Math result not representable */
|
|
||||
+ LWEXT4_ERRNO(ENOTEMPTY) = 39, /* Directory not empty */
|
|
||||
+ LWEXT4_ERRNO(ENODATA) = 61, /* No data available */
|
|
||||
+ LWEXT4_ERRNO(ENOTSUP) = 95 /* Not supported */
|
|
||||
+ };
|
|
||||
+
|
|
||||
+#endif /* CONFIG_HAVE_OWN_ERRNO */
|
|
||||
|
|
||||
-#ifndef EOK
|
|
||||
-#define EOK 0
|
|
||||
-#endif
|
|
||||
|
|
||||
#ifdef __cplusplus |
|
||||
} |
|
@ -1,81 +0,0 @@ |
|||||
diff --git a/include/ext4_oflags.h b/include/ext4_oflags.h
|
|
||||
index 7f7be7e..87f42ef 100644
|
|
||||
--- a/include/ext4_oflags.h
|
|
||||
+++ b/include/ext4_oflags.h
|
|
||||
@@ -45,51 +45,33 @@ extern "C" {
|
|
||||
|
|
||||
#if CONFIG_HAVE_OWN_OFLAGS |
|
||||
|
|
||||
- #ifndef O_RDONLY
|
|
||||
- #define O_RDONLY 00
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef O_WRONLY
|
|
||||
- #define O_WRONLY 01
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef O_RDWR
|
|
||||
- #define O_RDWR 02
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef O_CREAT
|
|
||||
- #define O_CREAT 0100
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef O_EXCL
|
|
||||
- #define O_EXCL 0200
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef O_TRUNC
|
|
||||
- #define O_TRUNC 01000
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef O_APPEND
|
|
||||
- #define O_APPEND 02000
|
|
||||
- #endif
|
|
||||
+ #define LWEXT4_FLAGS(flags) LWEXT4_##flags
|
|
||||
+
|
|
||||
+ enum ext4_oflags {
|
|
||||
+ LWEXT4_FLAGS(O_RDONLY) = 00,
|
|
||||
+ LWEXT4_FLAGS(O_WRONLY) = 01,
|
|
||||
+ LWEXT4_FLAGS(O_RDWR) = 02,
|
|
||||
+ LWEXT4_FLAGS(O_CREAT) = 0100,
|
|
||||
+ LWEXT4_FLAGS(O_EXCL) = 0200,
|
|
||||
+ LWEXT4_FLAGS(O_TRUNC) = 01000,
|
|
||||
+ LWEXT4_FLAGS(O_APPEND) = 02000
|
|
||||
+ };
|
|
||||
|
|
||||
/********************************FILE SEEK FLAGS*****************************/ |
|
||||
|
|
||||
- #ifndef SEEK_SET
|
|
||||
- #define SEEK_SET 0
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef SEEK_CUR
|
|
||||
- #define SEEK_CUR 1
|
|
||||
- #endif
|
|
||||
-
|
|
||||
- #ifndef SEEK_END
|
|
||||
- #define SEEK_END 2
|
|
||||
- #endif
|
|
||||
+ enum ext4_seek_flags {
|
|
||||
+ LWEXT4_FLAGS(SEEK_SET) = 0,
|
|
||||
+ LWEXT4_FLAGS(SEEK_CUR) = 1,
|
|
||||
+ LWEXT4_FLAGS(SEEK_END) = 2
|
|
||||
+ };
|
|
||||
|
|
||||
#else |
|
||||
+
|
|
||||
#include <unistd.h> |
|
||||
#include <fcntl.h> |
|
||||
+
|
|
||||
+ #define LWEXT4_FLAGS(flags) (flags)
|
|
||||
+
|
|
||||
#endif |
|
||||
|
|
||||
#ifdef __cplusplus |
|
||||
@@ -101,3 +83,4 @@ extern "C" {
|
|
||||
/** |
|
||||
* @} |
|
||||
*/ |
|
||||
+
|
|
@ -1,65 +0,0 @@ |
|||||
#!/bin/sh |
|
||||
|
|
||||
MACRO_NAME=LWEXT4 |
|
||||
EXT4_ERRNO_H=ext4_errno.h |
|
||||
EXT4_OFLAGS_H=ext4_oflags.h |
|
||||
USED_ERRNO_FILE=/tmp/used_errno |
|
||||
USED_OFLAGS_FILE=/tmp/used_oflags |
|
||||
|
|
||||
usage() |
|
||||
{ |
|
||||
printf "Usage: %s <lwext4_source_patch>" $1 |
|
||||
exit 1 |
|
||||
} |
|
||||
|
|
||||
if [[ $# -ne 1 ]];then |
|
||||
usage $0 |
|
||||
fi |
|
||||
|
|
||||
# First change the working directory to destination. |
|
||||
cd $1 |
|
||||
if [[ $? -ne 0 ]];then |
|
||||
exit $? |
|
||||
fi |
|
||||
|
|
||||
# Extract definitions from 2 files. |
|
||||
sed -n "s/[[:blank:]]*#define \(E[[:alnum:]]\+\)[[:blank:]]\+[[:alnum:]]\+[[:blank:]]*.*/\1/gp" ./include/$EXT4_ERRNO_H > $USED_ERRNO_FILE |
|
||||
sed -n "s/[[:blank:]]*#define \(O_[[:alpha:]]\+\)[[:blank:]]\+[[:alnum:]]\+[[:blank:]]*.*/\1/gp" ./include/$EXT4_OFLAGS_H > $USED_OFLAGS_FILE |
|
||||
sed -n "s/[[:blank:]]*#define \(SEEK_[[:alpha:]]\+\)[[:blank:]]\+[[:alnum:]]\+[[:blank:]]*.*/\1/gp" ./include/$EXT4_OFLAGS_H >> $USED_OFLAGS_FILE |
|
||||
|
|
||||
# Add prefix to those definjtions. |
|
||||
|
|
||||
for errno in $(cat $USED_ERRNO_FILE);do |
|
||||
echo "For $errno" |
|
||||
for file in $(find . -name "*.c" | xargs -n 1);do |
|
||||
if [[ $(basename $file) != $EXT4_ERRNO_H ]];then |
|
||||
sed -i "/${MACRO_NAME}_ERRNO(${errno})/b;s/\\<${errno}\\>/${MACRO_NAME}_ERRNO(${errno})/g" $file |
|
||||
fi |
|
||||
done |
|
||||
for file in $(find . -name "*.h" | xargs -n 1);do |
|
||||
if [[ $(basename $file) != $EXT4_ERRNO_H ]];then |
|
||||
sed -i "/${MACRO_NAME}_ERRNO(${errno})/b;s/\\<${errno}\\>/${MACRO_NAME}_ERRNO(${errno})/g" $file |
|
||||
fi |
|
||||
done |
|
||||
done |
|
||||
|
|
||||
for oflags in $(cat $USED_OFLAGS_FILE);do |
|
||||
echo "For $oflags" |
|
||||
for file in $(find . -name "*.c" | xargs -n 1);do |
|
||||
if [[ $(dirname $file) != "./blockdev/"* && \ |
|
||||
$(basename $file) != $EXT4_OFLAGS_H ]];then |
|
||||
sed -i "/${MACRO_NAME}_FLAGS(${oflags})/b;s/\\<${oflags}\\>/${MACRO_NAME}_FLAGS(${oflags})/g" $file |
|
||||
fi |
|
||||
done |
|
||||
for file in $(find . -name "*.h" | xargs -n 1);do |
|
||||
if [[ $(dirname $file) != "./blockdev/"* && \ |
|
||||
$(basename $file) != $EXT4_OFLAGS_H ]];then |
|
||||
sed -i "/${MACRO_NAME}_FLAGS(${oflags})/b;s/\\<${oflags}\\>/${MACRO_NAME}_FLAGS(${oflags})/g" $file |
|
||||
fi |
|
||||
done |
|
||||
done |
|
||||
|
|
||||
# Do final patching. |
|
||||
for patches in $(dirname $0)/*.patch ;do |
|
||||
patch -p1 < $patches |
|
||||
done |
|
Loading…
Reference in new issue