The commit that will break everthing:

- New library: libCGALimageIO
- make shared libraries for CORE, and Benchmark.
This commit is contained in:
Laurent Rineau 2007-02-02 16:10:06 +00:00
parent b721216816
commit 6c6cbdcb1c
39 changed files with 183 additions and 36 deletions

View File

@ -57,6 +57,13 @@ Option_parser$(OBJ_EXT)
static_lib: lib
shared_lib: $(CGAL_OBJECTS)
$(CGAL_BENCHMARK_SHARED_LIB_CREATE)$(CGAL_BENCHMARK_SHARED_LIB) \
`ls *$(OBJ_EXT) | awk '{for (i=1; i<=NF;++i){printf "$(CGAL_OBJ_PREFIX)";print $$i}}'`\
$(CGAL_SHARED_LIB_LDFLAGS)
mv $(CGAL_BENCHMARK_SHARED_LIB) '$(CGAL_LIB_DESTINATION)'
rm $(CGAL_OBJECTS)
lib: lib_no_install
mv $(CGAL_BENCHMARK_LIB) $(CGAL_LIB_DESTINATION)
@ -68,7 +75,7 @@ lib_no_install: $(CGAL_OBJECTS)
rm $(CGAL_OBJECTS)
clean:
rm -f $(CGAL_BENCHMARK_LIB) $(CGAL_OBJECTS)
rm -f $(CGAL_BENCHMARK_LIB) $(CGAL_BENCHMARK_SHARED_LIB) $(CGAL_OBJECTS)
#---------------------------------------------------------------------#
# suffix rules

View File

@ -39,7 +39,7 @@ GmpIO$(OBJ_EXT)
# - The Darwin install_name is buggy (it's libCGAL)
shared_lib: $(CGAL_OBJECTS)
$(CGAL_SHARED_LIB_CREATE)$(CGAL_CORE_SHARED_LIB) \
$(CGAL_CORE_SHARED_LIB_CREATE)$(CGAL_CORE_SHARED_LIB) \
`ls *$(OBJ_EXT) | awk '{for (i=1; i<=NF;++i){printf "$(CGAL_OBJ_PREFIX)";print $$i}}'`\
$(CGAL_SHARED_LIB_LDFLAGS) $(GMP_LIBPATHFLAGS) $(MPFR_LIBPATHFLAGS) $(GMP_LDFLAGS)
mv $(CGAL_CORE_SHARED_LIB) '$(CGAL_LIB_DESTINATION)'

View File

@ -777,6 +777,10 @@ set_compiler_flags()
CGAL_SHARED_LIB_LDFLAGS=
CGAL_SHARED_LIB_CREATE="\$(CGAL_CXX) -shared"
CGAL_SHARED_LIB_INSTALL_NAME=""
CGAL_QT_SHARED_LIB_INSTALL_NAME=""
CGAL_BENCHMARK_SHARED_LIB_INSTALL_NAME=""
CGAL_IMAGEIO_SHARED_LIB_INSTALL_NAME=""
CGAL_CORE_SHARED_LIB_INSTALL_NAME=""
CGAL_WINLIB_CXXFLAGS=""
CGAL_QT_CXXFLAGS=""
WINDOW_INCLUDE=""
@ -799,6 +803,7 @@ set_compiler_flags()
CGAL_LIBNAME="libCGAL.a"
CGAL_QT_LIBNAME="libCGALQt.a"
CGAL_BENCHMARK_LIBNAME="libCGALBenchmark.a"
CGAL_IMAGEIO_LIBNAME="libCGALimageIO.a"
CORE_LIBNAME="libcore++.a"
CGAL_WIN_EXTRA_DIR=x11
MATH_LIB="m"
@ -829,6 +834,7 @@ set_compiler_flags()
CGAL_LIBNAME="CGAL.lib"
CGAL_QT_LIBNAME="CGALQt.lib"
CGAL_BENCHMARK_LIBNAME="CGALBenchmark.lib"
CGAL_IMAGEIO_LIBNAME="CGALimageIO.lib"
CORE_LIBNAME="libcore++.lib"
CGAL_WIN_EXTRA_DIR=mswin
MATH_LIB=""
@ -859,6 +865,7 @@ set_compiler_flags()
CGAL_LIBNAME="CGAL.lib"
CGAL_QT_LIBNAME="CGALQt.lib"
CGAL_BENCHMARK_LIBNAME="CGALBenchmark.lib"
CGAL_IMAGEIO_LIBNAME="CGALimageIO.lib"
CORE_LIBNAME="core++.lib"
CGAL_WIN_EXTRA_DIR=mswin
MATH_LIB=
@ -889,6 +896,7 @@ set_compiler_flags()
CGAL_LIBNAME="CGAL.lib"
CGAL_QT_LIBNAME="CGALQt.lib"
CGAL_BENCHMARK_LIBNAME="CGALBenchmark.lib"
CGAL_IMAGEIO_LIBNAME="CGALimageIO.lib"
CORE_LIBNAME="core++.lib"
CGAL_WIN_EXTRA_DIR=mswin
MATH_LIB=
@ -978,9 +986,11 @@ set_compiler_flags()
ADDITIONAL_CXXFLAGS="-Wall"
CGAL_SHARED_LIB_CXXFLAGS="-fno-common"
CGAL_SHARED_LIB_CREATE="\$(CGAL_CXX) -dynamiclib"
# Note : The following CGAL_SHARED_LIB_INSTALL_NAME definition
# prevents re-use for other shared libs, e.g. libCGALQt.
CGAL_SHARED_LIB_INSTALL_NAME="-install_name \$(CGAL_LIB_DESTINATION)/\$(CGAL_SHARED_LIB)"
CGAL_QT_SHARED_LIB_INSTALL_NAME="-install_name \$(CGAL_LIB_DESTINATION)/\$(CGAL_QT_SHARED_LIB)"
CGAL_BENCHMARK_SHARED_LIB_INSTALL_NAME="-install_name \$(CGAL_LIB_DESTINATION)/\$(CGAL_BENCHMARK_SHARED_LIB)"
CGAL_IMAGEIO_SHARED_LIB_INSTALL_NAME="-install_name \$(CGAL_LIB_DESTINATION)/\$(CGAL_IMAGEIO_SHARED_LIB)"
CGAL_CORE_SHARED_LIB_INSTALL_NAME="-install_name \$(CGAL_LIB_DESTINATION)/\$(CGAL_CORE_SHARED_LIB)"
SHARED_LIB_EXT=".dylib"
RANLIB="ranlib"
;;
@ -3886,6 +3896,9 @@ write_linker_flags()
if [ -d "${CGAL_SRC_DIR}/Benchmark" ]; then
makefile_print_continuationline "`lib_option \"CGALBenchmark\"`" >> ${FILE}
fi
if [ -d "${CGAL_SRC_DIR}/CGALimageIO" ]; then
makefile_print_continuationline "`lib_option \"CGALimageIO\"`" >> ${FILE}
fi
for i in ${R_SUPPORT_PKGS}; do
if [ -n "`value_of \"${i}_SUPPORT\"`" ]; then
makefile_print_continuationline "\$(${i}_LDFLAGS)" >> ${FILE}
@ -3905,7 +3918,6 @@ write_linker_flags()
${_printf} "%s\n\n" "CGAL_WINDOW_LDFLAGS = \$(CGAL_LDFLAGS)" >> ${FILE}
${_printf} "%s\n\n" "CGAL_GEOWIN_LDFLAGS = \$(CGAL_LDFLAGS)" >> ${FILE}
${_printf} "%s\n\n" "CGAL_QT_LDFLAGS = \$(CGAL_LDFLAGS)" >> ${FILE}
${_printf} "%s\n\n" "CGAL_BENCHMARK_LDFLAGS = \$(CGAL_LDFLAGS)" >> ${FILE}
}
# create the include makefile for current configuration
@ -4030,12 +4042,13 @@ create_include_makefile()
>> ${FILE}
#
# CGAL_(WIN)LIB
# CGAL_(*)LIB
#
${_printf} "%s\n" "CGAL_LIB = ${CGAL_LIBNAME}" >> ${FILE}
${_printf} "%s\n" "CGAL_WIN_EXTRA_DIR = ${CGAL_WIN_EXTRA_DIR}" >> ${FILE}
${_printf} "%s\n" "CGAL_QT_LIB = ${CGAL_QT_LIBNAME}" >> ${FILE}
${_printf} "%s\n" "CGAL_BENCHMARK_LIB = ${CGAL_BENCHMARK_LIBNAME}" >> ${FILE}
${_printf} "%s\n" "CGAL_IMAGEIO_LIB = ${CGAL_IMAGEIO_LIBNAME}" >> ${FILE}
${_printf} "%s\n" "CGAL_CORE_LIB = ${CORE_LIBNAME}" >> ${FILE}
@ -4065,6 +4078,7 @@ create_include_makefile()
${_printf} "%s\n" "CGAL_CORE_SHARED_LIB = libcore++${SHARED_LIB_EXT}" >> ${FILE}
${_printf} "%s\n" "CGAL_QT_SHARED_LIB = libCGALQt${SHARED_LIB_EXT}" >> ${FILE}
${_printf} "%s\n" "CGAL_BENCHMARK_SHARED_LIB = libCGALBenchmark${SHARED_LIB_EXT}" >> ${FILE}
${_printf} "%s\n" "CGAL_IMAGEIO_SHARED_LIB = libCGALimageIO${SHARED_LIB_EXT}" >> ${FILE}
#
# CGAL_SHARED_LIB_CXXFLAGS
@ -4080,6 +4094,14 @@ create_include_makefile()
"CGAL_SHARED_LIB_LDFLAGS = ${CGAL_SHARED_LIB_LDFLAGS}" >> ${FILE}
${_printf} "%s\n" >> ${FILE}
## CGAL_SHARED_LIB_CREATE, CGAL_QT_SHARED_LIB_CREATE,
## CGAL_BENCHMARK_SHARED_LIB_CREATE, and CGAL_IMAGEIO_SHARED_LIB_CREATE
## are makefile variables used only in the makefiles in src/*/.
##
## This is a temporary hack, I hope, until we use another build system.
## -- Laurent Rineau, 2007/02/02.
#
# CGAL_SHARED_LIB_CREATE
#
@ -4087,6 +4109,34 @@ create_include_makefile()
"CGAL_SHARED_LIB_CREATE = ${CGAL_SHARED_LIB_CREATE} ${CGAL_SHARED_LIB_INSTALL_NAME} -o ''" \
>> ${FILE}
#
# CGAL_QT_SHARED_LIB_CREATE
#
${_printf} "%s\n\n" \
"CGAL_QT_SHARED_LIB_CREATE = ${CGAL_SHARED_LIB_CREATE} ${CGAL_QT_SHARED_LIB_INSTALL_NAME} -o ''" \
>> ${FILE}
#
# CGAL_BENCHMARK_SHARED_LIB_CREATE
#
${_printf} "%s\n\n" \
"CGAL_BENCHMARK_SHARED_LIB_CREATE = ${CGAL_SHARED_LIB_CREATE} ${CGAL_BENCHMARK_SHARED_LIB_INSTALL_NAME} -o ''" \
>> ${FILE}
#
# CGAL_IMAGEIO_SHARED_LIB_CREATE
#
${_printf} "%s\n\n" \
"CGAL_IMAGEIO_SHARED_LIB_CREATE = ${CGAL_SHARED_LIB_CREATE} ${CGAL_IMAGEIO_SHARED_LIB_INSTALL_NAME} -o ''" \
>> ${FILE}
#
# CGAL_CORE_SHARED_LIB_CREATE
#
${_printf} "%s\n\n" \
"CGAL_CORE_SHARED_LIB_CREATE = ${CGAL_SHARED_LIB_CREATE} ${CGAL_CORE_SHARED_LIB_INSTALL_NAME} -o ''" \
>> ${FILE}
#
# PRINT_STACKTRACE_PROGRAM
#
@ -4153,7 +4203,7 @@ generatemakefiles()
}
# compile $1 $2
# $1 = libCGAL, libCore, libCGALQt, libCGALBenchmark ...
# $1 = libCGAL, libCore, libCGALQt, libCGALBenchmark, libCGALimageIO ...
# $2 = static, shared
# return 0, iff success
_do_compile()
@ -4281,12 +4331,17 @@ build_cgal()
if [ -d "${CGAL_SRC_DIR}/Benchmark" ]; then
cd "${CGAL_SRC_DIR}/Benchmark"
_do_compile libCGALBenchmark static
# _do_compile libCGALBenchmark shared # Not yet ready
_do_compile libCGALBenchmark shared
fi
if [ -d "${CGAL_SRC_DIR}/CGALimageIO" ]; then
cd "${CGAL_SRC_DIR}/CGALimageIO"
_do_compile libCGALimageIO static
_do_compile libCGALimageIO shared
fi
if [ -d "${CGAL_SRC_DIR}/Core" -a "${PROVIDE_PKG_CORE}" = "CGALCORE" ]; then
cd "${CGAL_SRC_DIR}/Core"
_do_compile libCore static
# _do_compile libCore shared # Not yet ready
_do_compile libCore shared
fi
fi
write_buffer "\n"

View File

@ -20,6 +20,7 @@
#
# Author(s) : Radu Ursu
# Sylvain Pion
# Laurent Rineau
# This is the makefile for compiling static and shared libraries in CGAL.

View File

@ -9,25 +9,12 @@
# CGAL_MAKEFILE = ENTER_YOUR_INCLUDE_MAKEFILE_HERE
include $(CGAL_MAKEFILE)
default-rule: all
.PHONY: default-rule
#---------------------------------------------------------------------#
# ImageIO files
#---------------------------------------------------------------------#
IMAGEIO_PATH = ImageIO/
include $(IMAGEIO_PATH)/imageio.mk
#---------------------------------------------------------------------#
# compiler flags
#---------------------------------------------------------------------#
CXXFLAGS = \
-I../../include \
-I$(IMAGEIO_PATH) \
$(OTHER_INCLUDES) \
$(CGAL_CXXFLAGS) \
$(LONG_NAME_PROBLEM_CXXFLAGS) \
@ -53,16 +40,15 @@ TARGETS = mesh_a_3d_gray_image$(EXE_EXT) \
all: $(TARGETS)
mesh_a_3d_gray_image$(EXE_EXT): mesh_a_3d_gray_image$(OBJ_EXT) $(IMAGEIO_OBJECTS)
$(CGAL_CXX) $(LIBPATH) $(EXE_OPT)mesh_a_3d_gray_image mesh_a_3d_gray_image$(OBJ_EXT) $(IMAGEIO_OBJECTS) $(LDFLAGS)
mesh_a_3d_gray_image$(EXE_EXT): mesh_a_3d_gray_image$(OBJ_EXT)
$(CGAL_CXX) $(LIBPATH) $(EXE_OPT)mesh_a_3d_gray_image mesh_a_3d_gray_image$(OBJ_EXT) $(LDFLAGS)
mesh_an_implicit_function$(EXE_EXT): mesh_an_implicit_function$(OBJ_EXT)
$(CGAL_CXX) $(LIBPATH) $(EXE_OPT)mesh_an_implicit_function mesh_an_implicit_function$(OBJ_EXT) $(LDFLAGS)
clean: \
mesh_a_3d_gray_image.clean \
mesh_an_implicit_function.clean \
imageio-clean
mesh_an_implicit_function.clean

View File

@ -21,7 +21,7 @@
#define CGAL_MESH_3_GRAY_LEVEL_IMAGE_3_H
#include <CGAL/basic.h>
#include "imageio/ImageIO.h"
#include "CGAL/imageio/ImageIO.h"
namespace CGAL {

View File

@ -12,7 +12,7 @@
#include <stdlib.h>
#include <string.h>
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
/* formats actuellement lus

View File

@ -10,7 +10,7 @@
#ifdef __cplusplus
extern "C" {
#endif
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
/* read analyse format header

View File

@ -30,7 +30,7 @@ extern "C" {
#include <sys/stat.h> /* open, close */
#include <sys/types.h> /* open, close */
#include <string.h>
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
extern int readBmpImage(const char *name, _image *im);
extern void *_readBmpImage( const char *name, int *dimx, int *dimy, int *dimz );
int testBmpHeader(char *magic,const char *name);

View File

@ -6,7 +6,7 @@
extern "C" {
#endif
#include <stdio.h>
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
int readGifImage(const char *name,_image *im);
int testGifHeader(char *magic,const char *name);

View File

@ -2,7 +2,7 @@
#define GIS_H
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
#ifdef __cplusplus

View File

@ -3,7 +3,7 @@
#define INR_H
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
#ifdef __cplusplus

View File

@ -1,7 +1,7 @@
#ifndef IRIS_H
#define IRIS_H
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
#ifdef __cplusplus

View File

@ -0,0 +1,98 @@
# Copyright (c) 1997-2006 Utrecht University (The Netherlands),
# ETH Zurich (Switzerland), Freie Universitaet Berlin (Germany),
# INRIA Sophia-Antipolis (France), Martin-Luther-University Halle-Wittenberg
# (Germany), Max-Planck-Institute Saarbruecken (Germany), RISC Linz (Austria),
# and Tel-Aviv University (Israel). All rights reserved.
#
# This file is part of CGAL (www.cgal.org); you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; version 2.1 of the License.
# See the file LICENSE.LGPL distributed with CGAL.
#
# Licensees holding a valid commercial license may use this file in
# accordance with the commercial license agreement provided with the software.
#
# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
# $URL$
# $Id$
#
# Author(s) : Radu Ursu
# Sylvain Pion
# This is the makefile for compiling static and shared libraries in CGAL.
#---------------------------------------------------------------------#
# include platform specific settings
#---------------------------------------------------------------------#
# Choose the right include file from the <cgalroot>/make directory.
# The following line should better be passed as command line argument.
# CGAL_MAKEFILE = SHOULD_BE_SET_BY_INSTALL_CGAL
include $(CGAL_MAKEFILE)
#---------------------------------------------------------------------#
# compiler flags
#---------------------------------------------------------------------#
# CXXFLAGS needs to be passed as command line argument
# CXXFLAGS = $(CGAL_SHARED_LIB_CXXFLAGS)
#---------------------------------------------------------------------#
# object files
#---------------------------------------------------------------------#
CGAL_OBJECTS = \
ImageIO$(OBJ_EXT) \
analyze$(OBJ_EXT) \
bmp$(OBJ_EXT) \
bmpendian$(OBJ_EXT) \
bmpread$(OBJ_EXT) \
convert$(OBJ_EXT) \
gif$(OBJ_EXT) \
gis$(OBJ_EXT) \
inr$(OBJ_EXT) \
iris$(OBJ_EXT) \
mincio$(OBJ_EXT) \
pnm$(OBJ_EXT) \
recbuffer$(OBJ_EXT) \
recline$(OBJ_EXT) \
reech4x4$(OBJ_EXT)
#---------------------------------------------------------------------#
# target entries
#---------------------------------------------------------------------#
shared_lib: $(CGAL_OBJECTS)
$(CGAL_IMAGEIO_SHARED_LIB_CREATE)$(CGAL_IMAGEIO_SHARED_LIB) \
`ls *$(OBJ_EXT) | awk '{for (i=1; i<=NF;++i){printf "$(CGAL_OBJ_PREFIX)";print $$i}}'`\
$(CGAL_SHARED_LIB_LDFLAGS)
mv $(CGAL_IMAGEIO_SHARED_LIB) '$(CGAL_LIB_DESTINATION)'
rm $(CGAL_OBJECTS)
static_lib: static_lib_no_install
mv $(CGAL_IMAGEIO_LIB) $(CGAL_LIB_DESTINATION)
static_lib_no_install: $(CGAL_OBJECTS)
$(CGAL_LIB_CREATE)$(CGAL_IMAGEIO_LIB) \
`ls *$(OBJ_EXT) | awk '{for (i=1; i<=NF;++i){printf "$(CGAL_OBJ_PREFIX)";print $$i}}'`\
$(CGAL_LIB_LDFLAGS)
$(RANLIB) $(CGAL_IMAGEIO_LIB)
rm $(CGAL_OBJECTS)
clean:
rm -f $(CGAL_IMAGEIO_LIB) $(CGAL_IMAGEIO_SHARED_LIB) $(CGAL_OBJECTS)
#---------------------------------------------------------------------#
# suffix rules
#---------------------------------------------------------------------#
.SUFFIXES: .cpp $(SUFFIXES)
.cpp$(OBJ_EXT):
$(CGAL_CXX) $(CXXFLAGS) -c $<
.c$(OBJ_EXT):
$(CGAL_CXX) $(CXXFLAGS) -c $<

View File

@ -3,7 +3,7 @@
#ifdef MINC_FILES
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
#include <minc.h>
#ifdef __cplusplus

View File

@ -6,7 +6,7 @@ extern "C" {
#endif
#include <stdio.h>
#include <imageio/ImageIO.h>
#include <CGAL/imageio/ImageIO.h>
int readPpmImage(const char *name,_image *im);