From: Christophe Rhodes Date: Thu, 29 Oct 2009 16:39:01 +0000 (+0000) Subject: 1.0.32.3: O_LARGEFILE support on x86-64/linux X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=d7eae4b7d495a7dea91cb23fdc4d2b3dbeae99a2;p=sbcl.git 1.0.32.3: O_LARGEFILE support on x86-64/linux Reported by Daniel Janus (and patch) as lp bug #453080. --- diff --git a/NEWS b/NEWS index 9545ab1..98662fd 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,7 @@ ;;;; -*- coding: utf-8; fill-column: 78 -*- changes relative to sbcl-1.0.32: + * improvement: support O_LARGEFILE access to files larger than 2GB on + x86-64/linux. (thanks to Daniel Janus) * bug fix: restore buildability on the MIPS platform. (regression from 1.0.30.38, reported by Samium Gromoff) diff --git a/make-config.sh b/make-config.sh index fa4768e..81877e7 100644 --- a/make-config.sh +++ b/make-config.sh @@ -160,7 +160,7 @@ case "$sbcl_os" in # If you add other platforms here, don't forget to edit # src/runtime/Config.foo-linux too. case "$sbcl_arch" in - x86 | mips) + x86 | x86-64 | mips) printf ' :largefile' >> $ltf ;; esac diff --git a/src/runtime/Config.x86_64-linux b/src/runtime/Config.x86_64-linux index 98d9787..e1efb79 100644 --- a/src/runtime/Config.x86_64-linux +++ b/src/runtime/Config.x86_64-linux @@ -30,6 +30,10 @@ OS_SRC = linux-os.c x86-64-linux-os.c LINKFLAGS += -Wl,--export-dynamic OS_LIBS = -ldl +ifdef LISP_FEATURE_LARGEFILE + CFLAGS += -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 +endif + ifdef LISP_FEATURE_SB_THREAD OS_LIBS += -lpthread endif diff --git a/version.lisp-expr b/version.lisp-expr index 05ccd09..c677cc1 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.32.2" +"1.0.32.3"