Skip to content
Snippets Groups Projects
Commit a4015921 authored by Anthony Mallet's avatar Anthony Mallet
Browse files

[wip/vcglib] Merge vcg-libply and vcglib

vcg-libply does not make sense out of vcg, so better merge the two packages.
Lots of fixes in Makefile / PLIST.

Ready for testing, waiting for feedback.
parent b969e90d
No related branches found
No related tags found
No related merge requests found
......@@ -17,7 +17,6 @@ SUBDIR+= robot-viewer
SUBDIR+= sot-gui
SUBDIR+= stackoftasks
SUBDIR+= test
SUBDIR+= vcg-libply
SUBDIR+= vcglib
SUBDIR+= visp
......
This is the VCG modified PLY library, a modern C++ library for parsing the PLY
file format.
PLY library was initially written by Greg Turk
(http://www.cc.gatech.edu/~turk). Claudio Rocchini
(http://en.wikipedia.org/wiki/User:Rocchini) tuned it for C++. VCG comes with
some improvements to make it better suit the templated C++ VCG Library.
# robotpkg Makefile for: modeling/vcg-libply
# Created: nksallem on Tue, 24 Aug 2010
#
PKGVERSION= 20100824
PKGNAME= vcg-libply-${PKGVERSION}
DISTNAME= vcglib-${PKGVERSION}.svn3811
CATEGORIES= modeling devel
MASTER_SITES= ${MASTER_SITE_OPENROBOTS:=external/vcglib/}
MASTER_REPOSITORY= \
svn https://vcg.svn.sourceforge.net/svnroot/vcg/trunk/vcglib
MAINTAINER= mallet@laas.fr
HOMEPAGE= http://vcg.sourceforge.net/index.php/VCGLib
COMMENT= C++ library for PLY file manipulation.
LICENSE= gnu-gpl-v2
WRKSRC= ${WRKDIR}/vcglib/wrap/ply
USE_LANGUAGES+= c++
include ../../mk/sysdep/cmake.mk
include ../../mk/robotpkg.mk
post-extract:
${CP} ${FILESDIR}/CMakeLists.txt ${WRKSRC}
@comment Tue Aug 24 15:17:53 CEST 2010
include/vcg-plylib.h
include/vcg-plystuff.h
lib/libply.so
lib/libply.so.${PKGVERSION}
# robotpkg depend.mk for: modeling/vcg-libply
# Created: nksallem on Tue, 24 Aug 2010
#
DEPEND_DEPTH:= ${DEPEND_DEPTH}+
VCG_LIBPLY_DEPEND_MK:= ${VCG_LIBPLY_DEPEND_MK}+
ifeq (+,$(DEPEND_DEPTH))
DEPEND_PKG+= vcg-libply
endif
ifeq (+,$(VCG_LIBPLYPLY_DEPEND_MK)) # --------------------------------------
DEPEND_USE+= vcg-libply
PREFER.vcg-libply?= robotpkg
DEPEND_ABI.vcg-libply?= vcg-libply>=20100824
DEPEND_DIR.vcg-libply?= ../../wip/vcg-libply
SYSTEM_SEARCH.vcg-libply=\
include/vcg-plylib.h \
'lib/libply.{a,so,dylib}'
endif # VCG_LIBPLY_DEPEND_MK -----------------------------------------------
DEPEND_DEPTH:= ${DEPEND_DEPTH:+=}
SHA1 (vcglib-20100824.svn3811.tar.gz) = d4cca53a7575e01b0ef77c8cdbe153255f3819f3
RMD160 (vcglib-20100824.svn3811.tar.gz) = 29bf866df8d26aac1e8caaf038caa6f1ab4c89ca
Size (vcglib-20100824.svn3811.tar.gz) = 9575692 bytes
SHA1 (patch-aa) = 51ffd98ab1755895121220c1746dfc4c43d7d382
project(Ply CXX)
include_directories(${Ply_SOURCE_DIR})
add_library(ply SHARED plylib.cpp)
set_property(TARGET ply PROPERTY VERSION 20100824)
install(TARGETS ply LIBRARY DESTINATION lib)
install(FILES plylib.h RENAME vcg-plylib.h DESTINATION include)
install(FILES plystuff.h RENAME vcg-plystuff.h DESTINATION include)
. Do not include external vcg headers here
. Do not hardcode include path in the source (and prefix header name with vcg)
--- plystuff.h~ 2010-08-24 15:29:55.547211698 +0200
+++ plystuff.h 2010-08-24 15:29:59.650211922 +0200
@@ -61,8 +61,7 @@
#include <io.h>
#endif
-#include <vcg/space/box3.h>
-#include <wrap/ply/plylib.h>
+#include "vcg-plylib.h"
using namespace vcg;
#ifdef WIN32
A portable C++ templated library for the manipulation, processing of triangle
and tetrahedral meshes. The library, released under the GPL license, is the
result of the collaborative efforts of the Visual Computing Lab of the ISTI
- an institute of the Italian National Research Council (CNR).
The VCG Lib could be defined as a portable C++ templated library for the
manipulation, processing of triangle and tetrahedral meshes, but that would be
unfair. VCG Lib is a library for managing 0,1,2 and 3-simplicial complexes,
which means Point Sets, Edge Mesh, Triangle Mesh and Tetrahedral Meshes. To be
completely honest, it is starting to support polygon meshes as well (stay
tuned).
This package provides headers that permit creation, manipulation, read and
write of meshes in several formats.
It just happens that the research interests of the developers leaded to develop
mesh processing algorithms mostly for triangle meshes, but the kernel is there
waiting... However, to avoid annoying the reader with 0-simplices, maximal
simplices and so on, in this tutorial we will always refer to the case of
triangle meshes, extending the explanation to the other cases only where
appropriate.
The library, released under the GPL license, is the result of the collaborative
efforts of the Visual Computing Lab of the ISTI - an institute of the Italian
National Research Council (CNR).
# robotpkg Makefile for: modeling/vcg-libply
# Created: nksallem on Tue, 24 Aug 2010
# robotpkg Makefile for: modeling/vcglib
# Created: nksallem on Wed, 25 Aug 2010
#
PKGVERSION= 20100824
PKGVERSION= 20100824
PKGNAME= vcglib-${PKGVERSION}
DISTNAME= vcglib-${PKGVERSION}.svn3811
......@@ -13,82 +13,61 @@ MASTER_REPOSITORY= \
MAINTAINER= mallet@laas.fr
HOMEPAGE= http://vcg.sourceforge.net/index.php/VCGLib
COMMENT= C++ library for mesh manipulation.
COMMENT= C++ templated library for mesh manipulation
LICENSE= gnu-gpl-v2
INSTALLATION_DIRS= include/vcglib
INSTALL_TARGET= install
WRKSRC= ${WRKDIR}/vcglib
NO_CONFIGURE= yes
NO_BUILD= yes
USE_LANGUAGES= c++
# fix path to eigen
SUBST_CLASSES+= eigen
SUBST_MESSAGE.eigen= Fixing Eigen path in headers.
SUBST_STAGE.eigen= post-extract
SUBST_SED.eigen= -e 's,\(..\|vcg\)/Eigen,Eigen,g'
SUBST_FILES.eigen=\
vcg/math/eigen.h \
vcg/complex/trimesh/update/curvature_fitting.h \
vcg/complex/trimesh/update/fitmaps.h
# doc option ---------------------------------------------------------------
PKG_SUPPORTED_OPTIONS+= doc
PKG_SUGGESTED_OPTIONS+= doc
PKG_OPTION_DESCR.doc?= Install ${PKGBASE} documentation
define PKG_OPTION_SET.doc
DOXYGEN_PLIST_DIR+= share/doc/${PKGBASE}
do-install: vcglib-install-doc
endef
INSTALL_TARGET+= doc
INSTALLATION_DIRS+= share/doc/vcglib/html
DOXYGEN_PLIST_DIR+= share/doc/vcglib/html
CMAKE_ARGS+=-DDOXYGEN_EXECUTABLE=${DOXYGEN}
include ../../mk/sysdep/doxygen.mk
include ../../pkgtools/pax/depend.mk
post-install: vcglib-install-doc
#apps option
PKG_SUPPORTED_OPTIONS+= apps
PKG_OPTION_DESCR.apps?= Install ${PKGBASE} sample applications
.PHONY: vcglib-install-doc
vcglib-install-doc:
cd ${WRKSRC}/docs/Doxygen && \
${PAX} -rw -pm html ${PREFIX}/share/doc/${PKGBASE}
cd ${WRKSRC}/docs && \
${PAX} -rw -pm *.* ${PREFIX}/share/doc/${PKGBASE}
cd ${WRKSRC}/apps && \
${PAX} -rw -pm . ${PREFIX}/share/doc/${PKGBASE}/examples
define PKG_OPTION_SET.apps
DOXYGEN_PLIST_DIR+= share/examples/${PKGBASE}
do-install: vcglib-install-apps
endef
endef # doc ----------------------------------------------------------------
include ../../mk/sysdep/doxygen.mk
include ../../math/eigen2/depend.mk
include ../../wip/vcg-libply/depend.mk
include ../../pkgtools/pax/depend.mk
include ../../mk/sysdep/cmake.mk
include ../../mk/robotpkg.mk
do-install: vcg-install-libs
@:
.PHONY: vcg-install-libs
vcg-install-libs: vcglib-install-img vcglib-install-vcg vcglib-install-wrap
vcglib-install-img:
cd ${WRKSRC} && ${PAX} -rw -pm img ${PREFIX}/${INSTALLATION_DIRS}
vcglib-install-vcg:
${INSTALL} -d ${PREFIX}/${INSTALLATION_DIRS}/vcg
cd ${WRKSRC}/vcg && ${PAX} -rw -pm complex ${PREFIX}/${INSTALLATION_DIRS}/vcg
cd ${WRKSRC}/vcg && ${PAX} -rw -pm connectors ${PREFIX}/${INSTALLATION_DIRS}/vcg
cd ${WRKSRC}/vcg && ${PAX} -rw -pm container ${PREFIX}/${INSTALLATION_DIRS}/vcg
cd ${WRKSRC}/vcg && ${PAX} -rw -pm math ${PREFIX}/${INSTALLATION_DIRS}/vcg
cd ${WRKSRC}/vcg && ${PAX} -rw -pm simplex ${PREFIX}/${INSTALLATION_DIRS}/vcg
cd ${WRKSRC}/vcg && ${PAX} -rw -pm space ${PREFIX}/${INSTALLATION_DIRS}/vcg
vcglib-install-wrap:
${INSTALL} -d ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm *.h ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm bmt ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm dae ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm gl ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm gui ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm io_edgemesh ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm io_tetramesh ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm io_trimesh ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm math ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm minpack ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm mt ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm opensg ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm qt ${PREFIX}/${INSTALLATION_DIRS}/wrap
cd ${WRKSRC}/wrap && ${PAX} -rw -pm system ${PREFIX}/${INSTALLATION_DIRS}/wrap
.PHONY: vcglib-install-doc
vcglib-install-doc:
cd ${WRKSRC}/docs/Doxygen && ${DOXYGEN} doxyfile
${INSTALL} -d ${PREFIX}/share/doc/${PKGBASE}
cd ${WRKSRC}/docs/Doxygen && ${PAX} -rw -pm html ${PREFIX}/share/doc/${PKGBASE}
cd ${WRKSRC}/docs && ${PAX} -rw -pm *.* ${PREFIX}/share/doc/${PKGBASE}
.PHONY: vcglib-install-apps
vcglib-install-apps:
${INSTALL} -d ${PREFIX}/share/examples/${PKGBASE}
cd ${WRKSRC}/apps && ${PAX} -rw -pm . ${PREFIX}/share/examples/${PKGBASE}
post-extract:
${CP} ${FILESDIR}/CMakeLists.txt ${WRKSRC}
${RM} -rf ${WRKSRC}/vcg/Eigen
${RMDIR} \
${WRKSRC}/vcg/simplex/vertexplus \
${WRKSRC}/vcg/simplex/faceplus \
${WRKSRC}/vcg/simplex/edgeplus
This diff is collapsed.
# $LAAS: depend.mk 2009/02/15 14:05:46 tho $
#
# Copyright (c) 2008-2009 LAAS/CNRS
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# 1. Redistributions of source code must retain the above copyright
# notice and this list of conditions.
# 2. Redistributions in binary form must reproduce the above copyright
# notice and this list of conditions in the documentation and/or
# other materials provided with the distribution.
#
# Anthony Mallet on Fri Oct 10 2008
# robotpkg depend.mk for: modeling/vcglib
# Created: nksallem on Wed, 25 Aug 2010
#
DEPEND_DEPTH:= ${DEPEND_DEPTH}+
VCGLIB_DEPEND_MK:= ${VCGLIB_DEPEND_MK}+
VCGLIB_DEPEND_MK:= ${VCGLIB_DEPEND_MK}+
ifeq (+,$(DEPEND_DEPTH))
DEPEND_PKG+= vcglib
endif
ifeq (+,$(VCGLIB_DEPEND_MK)) # -----------------------
ifeq (+,$(VCGLIB_DEPEND_MK)) # ---------------------------------------------
PREFER.vcglib?= robotpkg
SYSTEM_SEARCH.vcglib=\
include/vcglib/vcg/complex/all_types.h \
include/vcglib/vcg/connectors/hedge.h \
include/vcglib/vcg/container/container_allocation_table.h \
include/vcglib/vcg/math/base.h \
include/vcglib/vcg/simplex/vertex/base.h \
include/vcglib/vcg/space/space.h
DEPEND_USE+= vcglib
DEPEND_USE+= vcglib
DEPEND_ABI.vcglib?= vcglib>=20100824
DEPEND_DIR.vcglib?= ../../modeling/vcglib
DEPEND_DIR.vcglib?= ../../wip/vcglib
DEPEND_METHOD.vcglib?= build
SYSTEM_SEARCH.vcglib=\
include/vcglib/vcg/complex/all_types.h \
include/vcglib/vcg/simplex/vertex/base.h \
include/vcg/space/space.h
endif # VCGLIB_DEPEND_MK -----------------------------
endif # VCGLIB_DEPEND_MK ---------------------------------------------------
DEPEND_DEPTH:= ${DEPEND_DEPTH:+=}
cmake_minimum_required(VERSION 0.0)
project(Ply CXX)
set(version 20100824)
# headers
install(DIRECTORY vcg wrap img DESTINATION include/vcglib
FILES_MATCHING PATTERN "*.h")
# doxygen
find_package(Doxygen)
if(DOXYGEN_FOUND)
add_custom_target(doc
${DOXYGEN_EXECUTABLE} doxyfile
WORKING_DIRECTORY docs/Doxygen
COMMENT "Generating API documentation with Doxygen" VERBATIM)
endif(DOXYGEN_FOUND)
# libply
include_directories(wrap/ply)
add_library(vcgply SHARED wrap/ply/plylib.cpp)
set_property(TARGET vcgply PROPERTY VERSION ${version})
install(TARGETS vcgply LIBRARY DESTINATION lib)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment