Fix BlueSky build on modern Linux and libs3.
authorMichael Vrable <vrable@cs.hmc.edu>
Wed, 28 Oct 2015 04:19:49 +0000 (21:19 -0700)
committerMichael Vrable <vrable@cs.hmc.edu>
Wed, 28 Oct 2015 04:19:49 +0000 (21:19 -0700)
  - Update S3_initialize calls to current API (3-argument form).
  - Minor CMakeLists updates.
  - dirfd is now a system function so avoid that name in our code.

CMakeLists.txt
bluesky/store-s3.c
cloudbench/CMakeLists.txt
cloudbench/readbench.c
cloudbench/readdelay.c
cloudbench/readlatency.c
logbench/logbench.c

index 379a92c..059c766 100644 (file)
@@ -5,7 +5,7 @@ set(CMAKE_BUILD_TYPE Debug)
 include(FindPkgConfig)
 pkg_check_modules(GLIB REQUIRED glib-2.0 gthread-2.0)
 
-set(LIBS3_BUILD_DIR "${CMAKE_SOURCE_DIR}/libs3-1.4/build")
+set(LIBS3_BUILD_DIR "${CMAKE_SOURCE_DIR}/libs3/build")
 
 add_definitions(-D_FILE_OFFSET_BITS=64)
 add_subdirectory(kvstore)
index fd2da4f..0c9e33d 100644 (file)
@@ -256,6 +256,6 @@ static BlueSkyStoreImplementation store_impl = {
 
 void bluesky_store_init_s3(void)
 {
-    S3_initialize(NULL, S3_INIT_ALL);
+    S3_initialize(NULL, S3_INIT_ALL, NULL);
     bluesky_store_register(&store_impl, "s3");
 }
index 6a9070d..e58b6b3 100644 (file)
@@ -8,6 +8,6 @@ add_executable(s3readdelay readdelay.c)
 set(CMAKE_C_FLAGS "-Wall -std=gnu99 ${CMAKE_C_FLAGS}")
 set(INSTALL_RPATH_USE_LINK_PATH 1)
 
-target_link_libraries(s3readbench pthread s3)
+target_link_libraries(s3readbench pthread s3)
 target_link_libraries(s3readlatency pthread s3)
 target_link_libraries(s3readdelay pthread s3)
index 7f1ff12..ac4185e 100644 (file)
@@ -254,7 +254,7 @@ int main(int argc, char *argv[])
         return 1;
     }
 
-    S3_initialize(NULL, S3_INIT_ALL);
+    S3_initialize(NULL, S3_INIT_ALL, NULL);
 
     bucket.bucketName = "mvrable-benchmark";
     bucket.protocol = S3ProtocolHTTP;
index c733e09..cc82c7a 100644 (file)
@@ -101,7 +101,7 @@ void run_test(int64_t delay_ns)
 
 int main(int argc, char *argv[])
 {
-    S3_initialize(NULL, S3_INIT_ALL);
+    S3_initialize(NULL, S3_INIT_ALL, NULL);
 
     bucket.bucketName = "mvrable-benchmark";
     bucket.protocol = S3ProtocolHTTP;
index 1fb8c20..05fbaa7 100644 (file)
@@ -201,7 +201,7 @@ int main(int argc, char *argv[])
         return 1;
     }
 
-    S3_initialize(NULL, S3_INIT_ALL);
+    S3_initialize(NULL, S3_INIT_ALL, NULL);
 
     bucket.bucketName = "mvrable-benchmark";
     bucket.protocol = S3ProtocolHTTP;
index 6f3a858..c421be1 100644 (file)
@@ -84,14 +84,14 @@ void writebuf(int fd, const char *buf, size_t len)
 }
 
 /************************ Direct-to-filesystem logging ***********************/
-static int dirfd = -1;
+static int dir_fd = -1;
 
 gpointer fslog_thread(gpointer d)
 {
     while (TRUE) {
         struct item *item = get_item();
 
-        int fd = openat(dirfd, item->key, O_CREAT|O_WRONLY|O_TRUNC, 0666);
+        int fd = openat(dir_fd, item->key, O_CREAT|O_WRONLY|O_TRUNC, 0666);
         g_assert(fd >= 0);
 
         writebuf(fd, item->data, item->len);
@@ -99,7 +99,7 @@ gpointer fslog_thread(gpointer d)
         finish_item(item);
 
         fsync(fd);
-        fsync(dirfd);
+        fsync(dir_fd);
         close(fd);
     }
 
@@ -108,8 +108,8 @@ gpointer fslog_thread(gpointer d)
 
 void launch_fslog()
 {
-    dirfd = open(".", O_DIRECTORY);
-    g_assert(dirfd >= 0);
+    dir_fd = open(".", O_DIRECTORY);
+    g_assert(dir_fd >= 0);
 
     for (int i = 0; i < 1; i++)
         g_thread_create(fslog_thread, NULL, FALSE, NULL);