Skip to content

Commit

Permalink
initial CVS import
Browse files Browse the repository at this point in the history
  • Loading branch information
szaka committed Oct 30, 2006
0 parents commit ba63b7d
Show file tree
Hide file tree
Showing 69 changed files with 32,454 additions and 0 deletions.
38 changes: 38 additions & 0 deletions CREDITS
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
The following people have contributed directly or indirectly
to the ntfs-3g project.

Please let [email protected] know if you believe
someone is missing, or if you prefer not to be listed.

Dominique L Bouix
Gergely Erdelyi
Anton Altaparmakov
Peter Boross
Don Bright
Mario Emmenlauer
Yuval Fledel
Kano from Kanotix
Roland Kletzing
Maarten Lankhorst
Gergely Madarasz
Patrick McLean
Florent Mertens
Yura Pakhuchiy
Miklos Szeredi
Bartosz Taudul
Zhanglinbao
Wade Fitzpatrick
Carsten Einig
Adam Cecile
Bruno Damour
Ales Fruman
Curt McDowell
Thomas Franken
Jonatan Lambert
Klaus Knopper
Zhanglinbao
Ismail Donmez
Laszlo Dvornik
Pallaghy Ajtony
Szabolcs Szakacsits

17 changes: 17 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@

SUBDIRS = include libntfs-3g src

EXTRA_DIST = AUTHORS CREDITS COPYING INSTALL NEWS README autogen.sh
AUTOMAKE_OPTIONS = gnu

MAINTAINERCLEANFILES = configure Makefile.in aclocal.m4 compile depcomp \
install-sh ltmain.sh missing config.guess config.sub config.h.in INSTALL

libtool: $(LIBTOOL_DEPS)
$(SHELL) ./config.status --recheck

strip:
(cd src && $(MAKE) strip) || exit 1;

libs:
(cd libntfs-3g && $(MAKE) libs) || exit 1;
63 changes: 63 additions & 0 deletions README
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@

INTRODUCTION
============

The ntfs-3g driver is an open source, freely available read/write NTFS
driver, which provides safe and fast handling of the Windows XP, Windows
Server 2003 and Windows 2000 filesystems. Almost the full POSIX filesystem
functionality is supported, the major exceptions are changing the file
ownerships and the access rights.

The purpose of the project is to develop, continuously quality test and
support a trustable, featureful and high performance solution for hardware
platforms and operating systems whose users need to reliably interoperate
with NTFS. Besides this practical goal, the project also aims to explore
the limits of the hybrid, kernel/user space filesystem driver approach,
performance, reliability and feature richness per invested effort wise.

The driver currently is in BETA status, which means that we weren't
reported and haven't found any data corruption or loss during ordinary
driver use and in our extensive quality testing before release of the
latest version of ntfs-3g, however we are aware of some usability issues
and driver restrictions which are all documented and planned to be resolved
in the future.

You can find news, technical answers, problem submission instructions,
performance evaluation and other informations on the project web site:

http://www.ntfs-3g.org


QUICK INSTALLATION
==================

Make sure you have the basic Linux development tools and the full FUSE
package (http://fuse.sourceforge.net) is already installed correctly on
the computer. Then type:

./configure
make
make install # or 'sudo make install' if you aren't root.


USAGE
=====

If there was no error during installation then the NTFS volume can be
read-write mounted for everybody the following way (unmount the volume if
it was already mounted, and replace /dev/hda1 and /mnt/windows, if needed):

ntfs-3g /dev/hda1 /mnt/windows

You may also need to set the 'locale' option to make all files with national
characters visible. Replace the below hu_HU.utf8 with the appropriate setting.

ntfs-3g /dev/hda1 /mnt/windows -o locale=hu_HU.utf8

Please see the ntfs-3g manual page for more options and examples.

You can also make NTFS to be mounted during boot by putting the below
line at the end of the /etc/fstab file:

/dev/hda1 /mnt/windows ntfs-3g defaults 0 0

22 changes: 22 additions & 0 deletions autogen.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash
# Run this to generate configure, Makefile.in's, etc

(autoreconf --version) < /dev/null > /dev/null 2>&1 || {
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "**Error**: You must have the GNU Build System (autoconf, automake, "
echo "libtool, etc) to update the ntfs-3g build system. Download the "
echo "appropriate packages for your distribution, or get the source "
echo "tar balls from ftp://ftp.gnu.org/pub/gnu/."
exit 1
}
echo
echo "**Error**: Your version of autoconf is too old (you need at least 2.57)"
echo "to update the ntfs-3g build system. Download the appropriate "
echo "updated package for your distribution, or get the source tar ball "
echo "from ftp://ftp.gnu.org/pub/gnu/."
exit 1
}

echo Running autoreconf --verbose --install
autoreconf --force --verbose --install
169 changes: 169 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
#
# configure.ac - Source file to generate "./configure" to prepare package for
# compilation.
#
# Copyright (c) 2000-2006 Anton Altaparmakov
# Copyright (c) 2003 Jan Kratochvil
# Copyright (c) 2005-2006 Szabolcs Szakacsits
#
# This program/include file is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as published
# by the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program/include file is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program (in the main directory of the NTFS-3G
# distribution in the file COPYING); if not, write to the Free Software
# Foundation,Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#

AC_PREREQ(2.59)
AC_INIT([ntfs-3g],[0.20061031-BETA],[[email protected]])

AC_CANONICAL_HOST([])
AC_CANONICAL_TARGET([])
AC_CONFIG_SRCDIR([config.h.in])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE
AM_MAINTAINER_MODE
AM_ENABLE_SHARED
AM_ENABLE_STATIC

AC_PREFIX_DEFAULT(/usr/local)
if test "x$prefix" = "xNONE"; then
prefix=$ac_default_prefix
ac_configure_args="$ac_configure_args --prefix $prefix"
fi

# Command-line options.
AC_ARG_ENABLE(debug,
AS_HELP_STRING(--enable-debug,enable additional debugging code and
output), ,
enable_debug=no
)

AC_ARG_ENABLE(really-static,
AS_HELP_STRING(--enable-really-static,create static binaries
for the utilities), ,
enable_really_static=no
)
AM_CONDITIONAL(REALLYSTATIC, test "$enable_really_static" = yes)

AC_ARG_ENABLE(warnings,
AS_HELP_STRING(--enable-warnings,enable additional compiler warnings), ,
enable_warnings=no
)

# Use GNU extensions if available.
AC_GNU_SOURCE

# Checks for programs.
AC_PROG_CC
AC_PROG_GCC_TRADITIONAL
AC_PROG_INSTALL
AC_PATH_PROG(RM, rm, rm)
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_PROG_LIBTOOL

# Libraries often install their metadata .pc files in directories not searched
# by pkg-config. Let's workaround this.
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/lib/pkgconfig:/opt/gnome/lib/pkgconfig:/usr/share/pkgconfig:/usr/local/lib/pkgconfig:$prefix/lib/pkgconfig:/opt/gnome/share/pkgconfig:/usr/local/share/pkgconfig

# Enable large file support.
AC_SYS_LARGEFILE

case "$target_os" in
linux*)
PKG_CHECK_MODULES(FUSE_MODULE, fuse >= 2.5.0, [ compile_fuse_module=true ],
[
AC_MSG_ERROR([ntfs-3g requires FUSE >= 2.5.0. Please see http://fuse.sf.net/ or install __all__ the precompiled fuse packages.])
]);;
*)
AC_MSG_ERROR([ntfs-3g can be built only under Linux.])
;;
esac

# add --with-extra-includes and --with-extra-libs switch to ./configure
all_libraries="$all_libraries $USER_LDFLAGS"
all_includes="$all_includes $USER_INCLUDES"
AC_SUBST(all_includes)
AC_SUBST(all_libraries)

# Add our compiler switches not discarding 'CFLAGS' as they may have been
# passed to us by rpmbuild(8).
# We add -Wall to enable some compiler warnings.
CFLAGS="$CFLAGS -Wall"

# Add lots of extra warnings if --enable-warnings was specified.
if test "$enable_warnings" = "yes"; then
CFLAGS="$CFLAGS -W -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Winline -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wmultichar -Wnested-externs -Wpointer-arith -Wredundant-decls -Wshadow -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings"
fi

# Add debugging switches if --enable-debug was specified.
if test "$enable_debug" = "yes"; then
CFLAGS="$CFLAGS -ggdb3 -DDEBUG"
fi

AC_SUBST(CFLAGS)
AC_SUBST(CPPFLAGS)
AC_SUBST(LDFLAGS)
AC_SUBST(LIBS)

AC_SUBST(LIBNTFS_3G_CFLAGS)

AC_SUBST(AUTODIRS)

# Checks for libraries.

# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([ctype.h fcntl.h libgen.h libintl.h limits.h locale.h \
mntent.h stddef.h stdint.h stdlib.h stdio.h stdarg.h string.h \
strings.h errno.h time.h unistd.h utime.h wchar.h getopt.h features.h \
endian.h byteswap.h sys/byteorder.h sys/endian.h sys/param.h \
sys/ioctl.h sys/mount.h sys/stat.h sys/types.h sys/vfs.h \
sys/statvfs.h sys/sysmacros.h linux/major.h linux/fd.h linux/hdreg.h \
machine/endian.h gcrypt.h windows.h gnutls/pkcs12.h syslog.h])

# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_BIGENDIAN(,
[AC_DEFINE([WORDS_LITTLEENDIAN], 1,
[Define to 1 if your processor stores words with the least significant
byte first (like Intel and VAX, unlike Motorola and SPARC).])]
,)
AC_C_CONST
AC_C_INLINE
AC_TYPE_OFF_T
AC_TYPE_SIZE_T
AC_STRUCT_ST_BLOCKS
AC_CHECK_MEMBERS([struct stat.st_rdev])

# Checks for library functions.
AC_FUNC_GETMNTENT
AC_FUNC_MBRTOWC
AC_FUNC_MEMCMP
AC_FUNC_STAT
AC_FUNC_STRFTIME
AC_FUNC_UTIME_NULL
AC_FUNC_VPRINTF
AC_CHECK_FUNCS([atexit basename dup2 fdatasync getopt_long hasmntopt mbsinit \
memmove memset realpath regcomp setlocale setxattr strcasecmp strchr \
strdup strerror strnlen strtol strtoul sysconf utime])

# Makefiles to be created by configure.
AC_CONFIG_FILES([
Makefile
include/Makefile
include/ntfs-3g/Makefile
libntfs-3g/Makefile
src/Makefile
src/ntfs-3g.8
])
AC_OUTPUT
3 changes: 3 additions & 0 deletions include/Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
SUBDIRS = ntfs-3g

MAINTAINERCLEANFILES = Makefile.in
34 changes: 34 additions & 0 deletions include/ntfs-3g/Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@

linux_ntfsincludedir = $(includedir)/ntfs-3g
linux_ntfsinclude_HEADERS = \
attrib.h \
attrlist.h \
bitmap.h \
bootsect.h \
collate.h \
compat.h \
compress.h \
debug.h \
device.h \
device_io.h \
dir.h \
endians.h \
index.h \
inode.h \
layout.h \
lcnalloc.h \
list.h \
logfile.h \
logging.h \
mft.h \
mst.h \
ntfstime.h \
runlist.h \
security.h \
support.h \
types.h \
unistr.h \
version.h \
volume.h

MAINTAINERCLEANFILES = Makefile.in
Loading

0 comments on commit ba63b7d

Please sign in to comment.