[e222c1]: make.settings.msvc  Maximize  Restore  History

Download this file

131 lines (83 with data), 3.9 kB

# Change this file according to your paths

# change this path, do not leave spaces at the end of the line 
STXXL_ROOT = c:\stxxl#
BOOST_ROOT = c:\boost#

MAKE = nmake
COMPILER = cl
LINKER = link
OPT = #/O2

#DEBUG = /MD # debug is off
DEBUG = /MDd # debug is on

#### BOOST OPTIONS ###############################################



BOOST_VARS =  \
 -D_RTLDLL -DBOOST_LIB_DIAGNOSTIC -DBOOST_ALL_DYN_LINK -DSTXXL_BOOST_TIMESTAMP \
 -DSTXXL_BOOST_CONFIG \
 -DSTXXL_BOOST_FILESYSTEM \
 -DSTXXL_BOOST_THREADS \
 -DSTXXL_BOOST_RANDOM \
 -I$(BOOST_ROOT)


##################################################################



#### MICROSOFT VC OPTIONS ########################################


MSVC_COMPILER_OPTIONS = /EHsc /EHs /wd4820 /wd4217 /wd4668 /wd4619 \
 /wd4625 /wd4626 /wd4355
MSVC_LINKER_OPTIONS = /LIBPATH:$(STXXL_ROOT)\lib\ \
 /LIBPATH:$(BOOST_ROOT)\lib\ 

##################################################################

#### DEPENDENCIES ################################################

COMMON_FILES = ../common/aligned_alloc.h  ../common/mutex.h    ../common/perm.h  \
../common/rand.h    ../common/semaphore.h      ../common/state.h   ../common/timer.h \
../common/utils.h ../common/gprof.h ../common/rwlock.h  ../common/simple_vector.h  \
../common/switch.h  ../common/tmeta.h ../make.settings

IO_LAYER_FILES = ../io/completion_handler.h  ../io/io.h  ../io/iobase.h  \
 ../io/iostats.h  ../io/mmap_file.h  ../io/simdisk_file.h  ../io/syscall_file.h  \
 ../io/ufs_file.h

MNG_LAYER_FILES = ../mng/adaptor.h  ../mng/async_schedule.h  ../mng/block_prefetcher.h \
../mng/buf_istream.h  ../mng/buf_ostream.h  ../mng/buf_writer.h  ../mng/mng.h \
../mng/write_pool.h ../mng/prefetch_pool.h

CONTAINER_MAP_FILES = $(STXXL_ROOT)/containers/map.impl/*.h

CONTAINER_FILES = ../containers/pager.h  ../containers/stack.h  ../containers/vector.h \
../containers/priority_queue.h ../containers/queue.h $(CONTAINER_MAP_FILES)

ALGO_FILES = ../algo/adaptor.h ../algo/inmemsort.h ../algo/intksort.h ../algo/run_cursor.h \
../algo/sort.h ../algo/async_schedule.h ../algo/interleaved_alloc.h ../algo/ksort.h \
../algo/loosertree.h ../algo/scan.h ../algo/stable_ksort.h

STREAM_FILES = ../stream/stream.h ../stream/sort_stream.h

###################################################################


#### MISC #########################################################

OBJEXT = obj # extension of object file
LIBEXT = lib # static library file extension
EXEEXT = exe # executable file extension
RM =     del # remove file command
LIBGEN = lib /out:# library generation
OUT    = /out:# output file for linking and compilation

###################################################################

STXXL_SPECIFIC = \
 -DSORT_OPT_PREFETCHING \
 -DUSE_MALLOC_LOCK -DCOUNT_WAIT_TIME -I$(STXXL_ROOT)/ \
 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE







# switch the direct I/O off
# STXXL_SPECIFIC += -DSTXXL_DIRECT_IO_OFF

# STXXL_SPECIFIC += -DSTXXL_CHECK_ORDER_IN_SORTS

# STXXL_SPECIFIC += -DSTXXL_DEBUGMON


# WARNINGS = -Wall




STXXL_COMPILER_OPTIONS = $(STXXL_SPECIFIC) $(WARNINGS) \
 $(DEBUG) $(OPT) $(BOOST_VARS) $(MSVC_COMPILER_OPTIONS)
STXXL_LINKER_OPTIONS = $(MSVC_LINKER_OPTIONS)



#
# Troubleshooting
#
# For automatical checking of order of the output elements in
# the sorters: stxxl::stream::sort, stxxl::stream::merge_runs,
# stxxl::sort, and stxxl::ksort
# use -DSTXXL_CHECK_ORDER_IN_SORTS compile option
#
# if your program aborts with message "read/write: wrong parameter"
# or "Invalid argument"
# this could be that your kernel does not support direct I/O
# then try to set it off recompiling your code with option
# -DSTXXL_DIRECT_IO_OFF (the libs must be also recompiled)
# The best way for doing it is to modify the STXXL_SPECIFIC
# variable (see above).
# But for the best performance it is strongly recommended 
# to reconfigure the kernel for the support of the direct I/O.
#
#

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks