Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions .idea/partio.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

238 changes: 238 additions & 0 deletions .idea/workspace.xml

Large diffs are not rendered by default.

81 changes: 58 additions & 23 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -87,35 +87,35 @@ IF(WIN32)
SET( SWIG_EXECUTABLE "${PARTIO_HOME}/winReqLibs/swigwin-2.0.4/swig.exe")
SET( PARTIO_BUILD_PLATFORM "windows_x86_64")
set(CMAKE_MODULE_PATH ${PARTIO_HOME}/cmake)

ELSE(WIN32)
ADD_DEFINITIONS (-Wextra -Wno-unused-parameter)
SET( CMAKE_CXX_FLAGS "-fPIC")
ENDIF(WIN32)

## Set install location
IF (UNIX)
#EXECUTE_PROCESS(COMMAND sh -c "echo `uname`-`uname -r | cut -d'-' -f1`-`uname -m`" OUTPUT_VARIABLE VARIANT_DIRECTORY OUTPUT_STRIP_TRAILING_WHITESPACE)
EXECUTE_PROCESS(COMMAND sh -c "echo `uname`-`uname -m`" OUTPUT_VARIABLE VARIANT_DIRECTORY OUTPUT_STRIP_TRAILING_WHITESPACE)
SET(PARTIO_BUILD_PLATFORM "${VARIANT_DIRECTORY}")
MESSAGE(STATUS "Build Platform: ${PARTIO_BUILD_PLATFORM}")
# to switch between rez and local install paths
SET (LOCAL_INSTALL 0)

## Set install location
IF ( ${CMAKE_INSTALL_PREFIX} STREQUAL "/usr/local")
message(STATUS "CMAKE INSTALL PREFIX being changed to local build")
SET (LOCAL_INSTALL 1)
IF (UNIX)
EXECUTE_PROCESS(COMMAND sh -c "echo `uname`-`uname -m`" OUTPUT_VARIABLE VARIANT_DIRECTORY OUTPUT_STRIP_TRAILING_WHITESPACE)
SET(PARTIO_BUILD_PLATFORM "${VARIANT_DIRECTORY}")
MESSAGE(STATUS "Build Platform: ${PARTIO_BUILD_PLATFORM}")
ENDIF(UNIX)

SET(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/build-${PARTIO_BUILD_PLATFORM}/)
ENDIF()

# output executable and library path
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/outputs/lib/${PARTIO_BUILD_PLATFORM})
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/outputs/bin/${PARTIO_BUILD_PLATFORM})

# output executable and library path
SET(EXECUTABLE_INSTALL_PATH ${CMAKE_SOURCE_DIR}/build-${PARTIO_BUILD_PLATFORM}/bin/${PARTIO_BUILD_PLATFORM})
SET(LIBRARY_INSTALL_PATH ${CMAKE_SOURCE_DIR}/build-${PARTIO_BUILD_PLATFORM}/lib/${PARTIO_BUILD_PLATFORM})
SET(INCLUDE_INSTALL_PATH ${CMAKE_SOURCE_DIR}/build-${PARTIO_BUILD_PLATFORM}/include)
message(STATUS "CMAKE INSTALL PREFIX = ${CMAKE_INSTALL_PREFIX}")

## Search for needed libraries
find_package(SWIG REQUIRED)

## Search for useful libraries
find_package(GLUT REQUIRED)

IF(GLUT_FOUND)
INCLUDE_DIRECTORIES( ${GLUT_INCLUDE_PATH} )
LINK_DIRECTORIES (${GLUT_ROOT_PATH}/lib/x64)
Expand All @@ -124,6 +124,12 @@ ELSE(GLUT_FOUND)
LINK_DIRECTORIES ( ${GLUT_LIBRARY_PATH} )
ENDIF(GLUT_FOUND)

################################################################################ HDA TMP
message(STATUS " partio/CMakeLists.txt : GLEW_INCLUDE_DIR = ${GLEW_INCLUDE_DIR}")

INCLUDE_DIRECTORIES( ${GLEW_INCLUDE_DIR} )
################################################################################ HDA TMP

find_package(OpenGL REQUIRED)

find_package(ZLIB REQUIRED)
Expand All @@ -150,13 +156,42 @@ ENDIF()
# make it so partio can be found
INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/src/lib )

## Traverse subdirectories
ADD_SUBDIRECTORY (src/lib)
ADD_SUBDIRECTORY (src/tools)
ADD_SUBDIRECTORY (src/py)
ADD_SUBDIRECTORY (src/tests)
#ADD_SUBDIRECTORY (src/houdini)
#ADD_SUBDIRECTORY (src/doc)
ADD_SUBDIRECTORY (contrib)
########################################################################## HDA
#SET (BUILD_PARTIO_LIBRARY 1)
#SET (BUILD_PARTIO_MAYA 1)
#SET (BUILD_PARTIO_MTOA 1)
########################################################################## HDA
SET (LEGACY_BUILD_MODE 1)

IF (BUILD_PARTIO_LIBRARY OR BUILD_PARTIO_MAYA OR BUILD_PARTIO_MTOA OR BUILD_PARTIO_ARNOLD OR BUILD_PARTIO_HOUDINI)
SET (LEGACY_BUILD_MODE 0)
ENDIF()

########################################################################## HDA
message(STATUS "partio/CMakeLists.txt : LEGACY_BUILD_MODE = ${LEGACY_BUILD_MODE}")
########################################################################## HDA
IF (LEGACY_BUILD_MODE)
ADD_SUBDIRECTORY (src/lib)
ADD_SUBDIRECTORY (src/tools)
ADD_SUBDIRECTORY (src/py)
ADD_SUBDIRECTORY (src/tests)
#ADD_SUBDIRECTORY (src/houdini)
#ADD_SUBDIRECTORY (src/doc)
ADD_SUBDIRECTORY (contrib)
ELSE (LEGACY_BUILD_MODE)
########################################################################## HDA
message(STATUS "partio/CMakeLists.txt : BUILD_PARTIO_LIBRARY = ${BUILD_PARTIO_LIBRARY}")
########################################################################## HDA

IF (BUILD_PARTIO_LIBRARY)
ADD_SUBDIRECTORY (src/lib)
ADD_SUBDIRECTORY (src/tools)
ADD_SUBDIRECTORY (src/py)
ADD_SUBDIRECTORY (src/tests)
ENDIF (BUILD_PARTIO_LIBRARY)
#ADD_SUBDIRECTORY (src/houdini)
#ADD_DEFINITIONS_SUBDIRECTORY (src/doc)
IF (BUILD_PARTIO_MAYA OR BUILD_PARTIO_MTOA OR BUILD_PARTIO_ARNOLD OR BUILD_PARTIO_HOUDINI)
ADD_SUBDIRECTORY (contrib)
ENDIF()
ENDIF ()
107 changes: 107 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
#!/bin/bash

build_partio_lib=1
build_partio_maya=1
build_partio_arnold=1

build_type=Release

#mayaVersions=(2015.sp6) #2014.sp4 do not build
#mayaVersions=(2016.sp6) #2014.sp4 do not build
#mayaVersions=(ext2.2016.sp1)
mayaVersions=(2017.0.0)


#####################################################################
# for MAYA 2016: #
# rez env gxx-4.6 cmake swig-3.0.5 glew-2.0 python-2.7 mayaAPI-2016 #
# #
#####################################################################


arnold_version='4.2.16.2'
mtoa_version='1.4.2.1.16'
compiler_path='/usr/bin/g++-4.6'

swig_executable='/s/apps/packages/dev/swig/3.0.5/platform-linux/bin/swig'


glew_include_dir=$REZ_GLEW_ROOT'/include'
glew_static_library=$REZ_GLEW_ROOT'/lib64/libGLEW.a'

#glew_include_dir='/s/apps/lin/vfx_test_apps/glew/1.11.0/include'
#glew_static_library='/s/apps/lin/vfx_test_apps/glew/1.11.0/lib/libGLEW.a'




export ARNOLD_HOME=/s/apps/packages/cg/arnold/$arnold_version/platform-linux
export MTOA_ROOT=/s/apps/packages/mikros/mayaModules/mimtoa/$mtoa_version/platform-linux/arnold-4.2/maya-2016
export PARTIO_HOME=/datas/hda/build/partio/build-Linux-x86_64

rm -fr /datas/hda/build/partio/partio.build
rm -fr /datas/hda/build/partio/build-Linux-x86_64

mkdir partio.build
mkdir build-Linux-x86_64

cd partio.build

if [ "$build_partio_lib" == 1 ]; then

echo "BUILD PARTIO LIB"

cmake .. \
-DBUILD_PARTIO_LIBRARY=1 \
-DBUILD_PARTIO_MAYA=0 \
-DBUILD_PARTIO_MTOA=0

make -j12
make install
fi

### Build Partio Maya plugin
echo $build_partio_maya

if [ "$build_partio_maya" == 1 ]; then

echo "BUILD PARTIO MAYA"

for mv in "${mayaVersions[@]}"
do
maya_executable='/s/apps/packages/cg/maya/'$mv'/platform-linux/bin/maya'

cmake .. \
-DCMAKE_BUILD_TYPE=$build_type \
-DGLEW_INCLUDE_DIR=$glew_include_dir \
-DGLEW_STATIC_LIBRARY=$glew_static_library \
-DMAYA_EXECUTABLE=$maya_executable \
-DBUILD_PARTIO_LIBRARY=1 \
-DBUILD_PARTIO_MAYA=1 \
-DBUILD_PARTIO_MTOA=0

make -j12
make install
done
fi

### Build Partio Arnold procedural
if [ "$build_partio_arnold" == 1 ]; then
cmake .. \
-DCMAKE_BUILD_TYPE=$build_type \
-DSWIG_EXECUTABLE=$swig_executable \
-DGLEW_INCLUDE_DIR=$glew_include_dir \
-DGLEW_STATIC_LIBRARY=$glew_static_library \
-DBUILD_PARTIO_LIBRARY=1 \
-DBUILD_PARTIO_MAYA=0 \
-DBUILD_PARTIO_MTOA=1

#-DCMAKE_CXX_COMPILER=$compiler_path \

make -j12
make install
fi

# cp /s/apps/users/hda/build/partio/build-Linux-x86_64/maya/2016/plug-ins/Linux-x86_64/partio4Maya.so /s/apps/users/hda/packages/cgDev/partioMaya/dev/platform-linux/maya-2016/plug-ins


44 changes: 39 additions & 5 deletions contrib/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,39 @@
add_subdirectory(partio4Maya)
if(NOT WIN32 AND NOT APPLE)
add_subdirectory(partio4Arnold)
add_subdirectory(partio4Houdini)
endif(NOT WIN32 AND NOT APPLE)
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
########################################################################## HDA
message(STATUS "HDA partio/contrib/CMakeLists.txt : LEGACY_BUILD_MODE = ${LEGACY_BUILD_MODE}")
########################################################################## HDA


if (LEGACY_BUILD_MODE)
find_package(Arnold)
find_package(Maya)
if (BUILD_PARTIO_HOUDINI)
find_package(Houdini)
endif ()
else ()
find_package(Partio)
include_directories(${PARTIO_INCLUDE_DIR})
link_directories(${PARTIO_LIBRARY_DIR})
if (BUILD_PARTIO_MTOA OR BUILD_PARTIO_ARNOLD)
find_package(Arnold)
endif ()
if (BUILD_PARTIO_MAYA OR BUILD_PARTIO_MTOA)
find_package(Maya)
endif ()
if (BUILD_PARTIO_HOUDINI)
find_package(Houdini)
endif ()
endif ()

if (MAYA_FOUND AND BUILD_PARTIO_MAYA)
add_subdirectory(partio4Maya)
endif ()

if (NOT WIN32 AND NOT APPLE)
if (ARNOLD_FOUND)
add_subdirectory(partio4Arnold)
endif ()
if (HOUDINI_FOUND)
add_subdirectory(partio4Houdini)
endif ()
endif ()
3 changes: 3 additions & 0 deletions contrib/cmake/FindArnold.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# Input variables from CMake of the form Arnold_FOO
# Output variables of the form ARNOLD_FOO
#
########################################################################## HDA
message(STATUS "################## FindArnold.cmake ##################")
########################################################################## HDA

find_library(ARNOLD_LIBRARY
NAMES ai
Expand Down
Loading