ENH: add cmake for jp3d
authorMathieu Malaterre <mathieu.malaterre@gmail.com>
Thu, 6 Sep 2007 10:51:38 +0000 (10:51 +0000)
committerMathieu Malaterre <mathieu.malaterre@gmail.com>
Thu, 6 Sep 2007 10:51:38 +0000 (10:51 +0000)
CMakeLists.txt
jp3d/CMakeLists.txt [new file with mode: 0644]
jp3d/codec/CMakeLists.txt [new file with mode: 0644]
jp3d/libjp3dvm/CMakeLists.txt [new file with mode: 0644]

index e9ac7f701fe7a67bf59e585943a150ad3fa3fd5e..9cedfe348568eef9f49edde7523a18c16a59bf75 100644 (file)
@@ -55,6 +55,7 @@ SUBDIRS(
   libopenjpeg
   mj2
   jpwl
+  jp3d
   )
 #-----------------------------------------------------------------------------
 # Build example only if requested
diff --git a/jp3d/CMakeLists.txt b/jp3d/CMakeLists.txt
new file mode 100644 (file)
index 0000000..b560ec7
--- /dev/null
@@ -0,0 +1,11 @@
+# Linux makefile for OpenJPEG
+
+#VER_MAJOR = 1
+#VER_MINOR = 0.0
+
+SUBDIRS(
+  libjp3dvm
+  codec
+)
+
+
diff --git a/jp3d/codec/CMakeLists.txt b/jp3d/codec/CMakeLists.txt
new file mode 100644 (file)
index 0000000..8d6599c
--- /dev/null
@@ -0,0 +1,53 @@
+# Build the demo app, small examples
+
+# First thing define the common source:
+SET(common_SRCS
+  convert.c
+  )
+# Then check if getopt is present:
+INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
+SET(DONT_HAVE_GETOPT 1)
+IF(UNIX) #I am pretty sure only *nix sys have this anyway
+  CHECK_INCLUDE_FILE("getopt.h" CMAKE_HAVE_GETOPT_H)
+  # Seems like we need the contrary:
+  IF(CMAKE_HAVE_GETOPT_H)
+    SET(DONT_HAVE_GETOPT 0)
+  ENDIF(CMAKE_HAVE_GETOPT_H)
+ENDIF(UNIX)
+
+# If not getopt was found then add it to the lib:
+IF(DONT_HAVE_GETOPT)
+  ADD_DEFINITIONS(-DDONT_HAVE_GETOPT)
+  SET(common_SRCS
+    ${common_SRCS}
+    compat/getopt.c
+  )
+ENDIF(DONT_HAVE_GETOPT)
+
+
+# Headers file are located here:
+INCLUDE_DIRECTORIES(
+  ${CMAKE_CURRENT_SOURCE_DIR}/../libjp3dvm
+  )
+
+# Do the proper thing when building static...if only there was configured
+# headers or def files instead
+#IF(NOT BUILD_SHARED_LIBS)
+#  ADD_DEFINITIONS(-DOPJ_STATIC)
+#ENDIF(NOT BUILD_SHARED_LIBS)
+
+#FIND_PACKAGE(TIFF REQUIRED)
+
+# Loop over all executables:
+FOREACH(exe jp3d_to_volume volume_to_jp3d)
+  ADD_EXECUTABLE(${exe} ${exe}.c ${common_SRCS})
+  TARGET_LINK_LIBRARIES(${exe} ${OPJ_PREFIX}openjp3dvm) # ${TIFF_LIBRARIES})
+  # On unix you need to link to the math library:
+  IF(UNIX)
+    TARGET_LINK_LIBRARIES(${exe} m)
+  ENDIF(UNIX)
+  # Install exe
+  INSTALL_TARGETS(/bin/ ${exe})
+ENDFOREACH(exe)
+
+
diff --git a/jp3d/libjp3dvm/CMakeLists.txt b/jp3d/libjp3dvm/CMakeLists.txt
new file mode 100644 (file)
index 0000000..17a094a
--- /dev/null
@@ -0,0 +1,24 @@
+INCLUDE_REGULAR_EXPRESSION("^.*$")
+# Defines the source code for the library
+SET(JP3DVM_SRCS
+bio.c  cio.c  dwt.c  event.c  jp3d.c  jp3d_lib.c  mct.c  mqc.c  openjpeg.c  pi.c  raw.c  t1.c  t1_3d.c  t2.c  tcd.c  tgt.c  volume.c
+)
+
+# Pass proper definition to preprocessor to generate shared lib
+IF(WIN32)
+  IF(BUILD_SHARED_LIBS)
+    ADD_DEFINITIONS(-DOPJ_EXPORTS)
+  ELSE(BUILD_SHARED_LIBS)
+    ADD_DEFINITIONS(-DOPJ_STATIC)
+  ENDIF(BUILD_SHARED_LIBS)
+ENDIF(WIN32)
+
+# Create the library
+#ADD_LIBRARY(${OPENJPEG_LIBRARY_NAME} ${OPENJPEG_SRCS})
+ADD_LIBRARY(${OPJ_PREFIX}openjp3dvm ${JP3DVM_SRCS})
+
+# Install library
+INSTALL_TARGETS(/lib/ ${OPJ_PREFIX}openjp3dvm)
+
+# Install includes files
+INSTALL_FILES(/include .h)