--- src/tools/fsync/Makefile.orig Fri Oct 13 00:42:26 2006 +++ src/tools/fsync/Makefile Fri Oct 13 01:11:19 2006 @@ -1,22 +1,25 @@ +#------------------------------------------------------------------------- # -# Makefile +# Makefile for src/tools/fsync # +# Copyright (c) 2003-2006, PostgreSQL Global Development Group # -TARGET = test_fsync -XFLAGS = -CFLAGS = -O -LIBS = - -$(TARGET) : test_fsync.o - $(CC) -o $(TARGET) $(XFLAGS) $(CFLAGS) test_fsync.o $(LIBS) - -test_fsync.o : test_fsync.c - $(CC) -c $(XFLAGS) $(CFLAGS) test_fsync.c - -clean: - rm -f *.o $(TARGET) log core - -install: - make clean - make CFLAGS=-O - install -s -o bin -g bin $(TARGET) /usr/local/bin +# $PostgreSQL: pgsql/src/tools/fsync/Makefile,v 1.1 2006/10/12 20:13:41 h-saito Exp $ +# +#------------------------------------------------------------------------- + +subdir = src/tools/fsync +top_builddir = ../../.. +include $(top_builddir)/src/Makefile.global + +override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) $(CPPFLAGS) + +OBJS= test_fsync.o + +all: submake-libpq submake-libpgport test_fsync + +test_fsync: test_fsync.o $(libpq_builddir)/libpq.a + $(CC) $(CFLAGS) test_fsync.o $(libpq_pgport) $(LDFLAGS) $(LIBS) -o $@$(X) + +clean distclean maintainer-clean: + rm -f test_fsync$(X) $(OBJS) --- src/tools/fsync/test_fsync.c.orig Fri Oct 13 00:42:35 2006 +++ src/tools/fsync/test_fsync.c Fri Oct 13 00:43:26 2006 @@ -4,6 +4,7 @@ */ #include "../../include/pg_config.h" +#include "../../include/pg_config_os.h" #include #include @@ -14,13 +15,19 @@ #include #include +#ifdef WIN32 +#define FSYNC_FILENAME "./test_fsync.out" +#else #define FSYNC_FILENAME "/var/tmp/test_fsync.out" +#endif /* O_SYNC and O_FSYNC are the same */ #if defined(O_SYNC) #define OPEN_SYNC_FLAG O_SYNC #elif defined(O_FSYNC) #define OPEN_SYNC_FLAG O_FSYNC +#elif defined(O_DSYNC) +#define OPEN_DATASYNC_FLAG O_DSYNC #endif #if defined(OPEN_SYNC_FLAG) @@ -122,6 +129,7 @@ printf("\nCompare one o_sync write to two:\n"); +#ifdef OPEN_SYNC_FLAG /* 16k o_sync write */ if ((tmpfile = open(filename, O_RDWR | OPEN_SYNC_FLAG)) == -1) die("Cannot open output file."); @@ -150,6 +158,10 @@ printf("\n"); printf("\nCompare file sync methods with one 8k write:\n"); +#else + printf("\t(o_sync unavailable) "); +#endif + printf("\n"); #ifdef OPEN_DATASYNC_FLAG /* open_dsync, write */ @@ -162,11 +174,8 @@ close(tmpfile); printf("\topen o_dsync, write "); print_elapse(start_t, elapse_t); -#else - printf("\t(o_dsync unavailable) "); -#endif printf("\n"); - +#ifdef OPEN_SYNC_FLAG /* open_fsync, write */ if ((tmpfile = open(filename, O_RDWR | OPEN_SYNC_FLAG)) == -1) die("Cannot open output file."); @@ -177,6 +186,10 @@ close(tmpfile); printf("\topen o_sync, write "); print_elapse(start_t, elapse_t); +#endif +#else + printf("\t(o_dsync unavailable) "); +#endif printf("\n"); #ifdef HAVE_FDATASYNC @@ -234,6 +247,7 @@ #endif printf("\n"); +#ifdef OPEN_SYNC_FLAG /* open_fsync, write */ if ((tmpfile = open(filename, O_RDWR | OPEN_SYNC_FLAG)) == -1) die("Cannot open output file."); @@ -248,6 +262,7 @@ printf("\topen o_sync, write "); print_elapse(start_t, elapse_t); printf("\n"); +#endif #ifdef HAVE_FDATASYNC /* write, fdatasync */