diff --git a/pandatool/CMakeLists.txt b/pandatool/CMakeLists.txt index 4695732303..194f298f44 100644 --- a/pandatool/CMakeLists.txt +++ b/pandatool/CMakeLists.txt @@ -10,10 +10,33 @@ add_subdirectory(src/dxf) add_subdirectory(src/dxfegg) add_subdirectory(src/dxfprogs) add_subdirectory(src/eggbase) +add_subdirectory(src/eggcharbase) +add_subdirectory(src/eggprogs) +add_subdirectory(src/egg-mkfont) +add_subdirectory(src/egg-optchar) +add_subdirectory(src/egg-palettize) +add_subdirectory(src/egg-qtess) add_subdirectory(src/flt) add_subdirectory(src/fltegg) add_subdirectory(src/fltprogs) add_subdirectory(src/gtk-stats) +add_subdirectory(src/imagebase) +add_subdirectory(src/imageprogs) +add_subdirectory(src/lwo) +add_subdirectory(src/lwoegg) +add_subdirectory(src/lwoprogs) +add_subdirectory(src/miscprogs) +add_subdirectory(src/objegg) +add_subdirectory(src/objprogs) +add_subdirectory(src/palettizer) add_subdirectory(src/pandatoolbase) +add_subdirectory(src/pfmprogs) add_subdirectory(src/progbase) add_subdirectory(src/pstatserver) +add_subdirectory(src/ptloader) +add_subdirectory(src/vrml) +add_subdirectory(src/vrmlegg) +add_subdirectory(src/vrmlprogs) +add_subdirectory(src/xfile) +add_subdirectory(src/xfileegg) +add_subdirectory(src/xfileprogs) diff --git a/pandatool/src/egg-mkfont/CMakeLists.txt b/pandatool/src/egg-mkfont/CMakeLists.txt new file mode 100644 index 0000000000..7f925ccd94 --- /dev/null +++ b/pandatool/src/egg-mkfont/CMakeLists.txt @@ -0,0 +1,17 @@ +set(P3EGG_MKFONT_HEADERS + eggMakeFont.h + rangeDescription.h rangeDescription.I + rangeIterator.h rangeIterator.I +) + +set(P3EGG_MKFONT_SOURCES + eggMakeFont.cxx + rangeDescription.cxx + rangeIterator.cxx +) + +composite_sources(egg-mkfont P3EGG_MKFONT_SOURCES) +add_executable(egg-mkfont ${P3EGG_MKFONT_HEADERS} ${P3EGG_MKFONT_SOURCES}) +target_link_libraries(egg-mkfont p3palettizer p3eggbase p3pandatoolbase) + +install(TARGETS egg-mkfont DESTINATION bin) diff --git a/pandatool/src/egg-optchar/CMakeLists.txt b/pandatool/src/egg-optchar/CMakeLists.txt new file mode 100644 index 0000000000..4d0f180def --- /dev/null +++ b/pandatool/src/egg-optchar/CMakeLists.txt @@ -0,0 +1,19 @@ +set(P3EGG_OPTCHAR_HEADERS + config_egg_optchar.h + eggOptchar.h + eggOptcharUserData.h eggOptcharUserData.I + vertexMembership.h vertexMembership.I +) + +set(P3EGG_OPTCHAR_SOURCES + config_egg_optchar.cxx + eggOptchar.cxx + eggOptcharUserData.cxx + vertexMembership.cxx +) + +composite_sources(egg-optchar P3EGG_OPTCHAR_SOURCES) +add_executable(egg-optchar ${P3EGG_OPTCHAR_HEADERS} ${P3EGG_OPTCHAR_SOURCES}) +target_link_libraries(egg-optchar p3eggcharbase) + +install(TARGETS egg-optchar DESTINATION bin) diff --git a/pandatool/src/egg-palettize/CMakeLists.txt b/pandatool/src/egg-palettize/CMakeLists.txt new file mode 100644 index 0000000000..5ed61c6cca --- /dev/null +++ b/pandatool/src/egg-palettize/CMakeLists.txt @@ -0,0 +1,7 @@ +add_executable(egg-palettize eggPalettize.cxx eggPalettize.h) +target_link_libraries(egg-palettize p3palettizer p3eggbase p3progbase) +install(TARGETS egg-palettize DESTINATION bin) + +add_library(p3txafile txaFileFilter.cxx txaFileFilter.h txaFileFilter.I) +target_link_libraries(p3txafile p3palettizer) +install(TARGETS p3txafile DESTINATION lib RUNTIME DESTINATION bin) diff --git a/pandatool/src/egg-qtess/CMakeLists.txt b/pandatool/src/egg-qtess/CMakeLists.txt new file mode 100644 index 0000000000..ec7819f4a8 --- /dev/null +++ b/pandatool/src/egg-qtess/CMakeLists.txt @@ -0,0 +1,27 @@ +set(P3EGG_QTESS_HEADERS + config_egg_qtess.h + eggQtess.h + isoPlacer.h isoPlacer.I + qtessGlobals.h + qtessInputEntry.h qtessInputEntry.I + qtessInputFile.h qtessInputFile.I + qtessSurface.h qtessSurface.I + subdivSegment.h subdivSegment.I +) + +set(P3EGG_QTESS_SOURCES + config_egg_qtess.cxx + eggQtess.cxx + isoPlacer.cxx + qtessGlobals.cxx + qtessInputEntry.cxx + qtessInputFile.cxx + qtessSurface.cxx + subdivSegment.cxx +) + +composite_sources(egg-qtess P3EGG_QTESS_SOURCES) +add_executable(egg-qtess ${P3EGG_QTESS_HEADERS} ${P3EGG_QTESS_SOURCES}) +target_link_libraries(egg-qtess p3eggbase) + +install(TARGETS egg-qtess DESTINATION bin) diff --git a/pandatool/src/eggcharbase/CMakeLists.txt b/pandatool/src/eggcharbase/CMakeLists.txt new file mode 100644 index 0000000000..b07b42929a --- /dev/null +++ b/pandatool/src/eggcharbase/CMakeLists.txt @@ -0,0 +1,42 @@ +set(P3EGGCHARBASE_HEADERS + config_eggcharbase.h + eggBackPointer.h + eggCharacterCollection.h eggCharacterCollection.I + eggCharacterData.h eggCharacterData.I + eggCharacterDb.h eggCharacterDb.I + eggCharacterFilter.h + eggComponentData.h eggComponentData.I + eggJointData.h eggJointData.I + eggJointNodePointer.h + eggJointPointer.h eggJointPointer.I + eggMatrixTablePointer.h + eggScalarTablePointer.h + eggSliderData.h eggSliderData.I + eggSliderPointer.h + eggVertexPointer.h +) + +set(P3EGGCHARBASE_SOURCES + config_eggcharbase.cxx + eggBackPointer.cxx + eggCharacterCollection.cxx + eggCharacterData.cxx + eggCharacterDb.cxx + eggCharacterFilter.cxx + eggComponentData.cxx + eggJointData.cxx + eggJointNodePointer.cxx + eggJointPointer.cxx + eggMatrixTablePointer.cxx + eggScalarTablePointer.cxx + eggSliderData.cxx + eggSliderPointer.cxx + eggVertexPointer.cxx +) + +composite_sources(p3eggcharbase P3EGGCHARBASE_SOURCES) +add_library(p3eggcharbase STATIC ${P3EGGCHARBASE_HEADERS} ${P3EGGCHARBASE_SOURCES}) +target_link_libraries(p3eggcharbase p3eggbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/eggprogs/CMakeLists.txt b/pandatool/src/eggprogs/CMakeLists.txt new file mode 100644 index 0000000000..b127796a67 --- /dev/null +++ b/pandatool/src/eggprogs/CMakeLists.txt @@ -0,0 +1,35 @@ +add_executable(egg-crop eggCrop.cxx eggCrop.h) +target_link_libraries(egg-crop p3eggbase) +install(TARGETS egg-crop DESTINATION bin) + +add_executable(egg-list-textures eggListTextures.cxx eggListTextures.h) +target_link_libraries(egg-list-textures p3eggbase) +install(TARGETS egg-list-textures DESTINATION bin) + +add_executable(egg-make-tube eggMakeTube.cxx eggMakeTube.h) +target_link_libraries(egg-make-tube p3eggbase) +install(TARGETS egg-make-tube DESTINATION bin) + +add_executable(egg-rename eggRename.cxx eggRename.h) +target_link_libraries(egg-rename p3eggbase) +install(TARGETS egg-rename DESTINATION bin) + +add_executable(egg-retarget-anim eggRetargetAnim.cxx eggRetargetAnim.h) +target_link_libraries(egg-retarget-anim p3eggcharbase) +install(TARGETS egg-retarget-anim DESTINATION bin) + +add_executable(egg-texture-cards eggTextureCards.cxx eggTextureCards.h) +target_link_libraries(egg-texture-cards p3eggbase) +install(TARGETS egg-texture-cards DESTINATION bin) + +add_executable(egg2c eggToC.cxx eggToC.h) +target_link_libraries(egg2c p3eggbase) +install(TARGETS egg2c DESTINATION bin) + +add_executable(egg-topstrip eggTopstrip.cxx eggTopstrip.h) +target_link_libraries(egg-topstrip p3eggcharbase) +install(TARGETS egg-topstrip DESTINATION bin) + +add_executable(egg-trans eggTrans.cxx eggTrans.h) +target_link_libraries(egg-trans p3eggbase) +install(TARGETS egg-trans DESTINATION bin) diff --git a/pandatool/src/imagebase/CMakeLists.txt b/pandatool/src/imagebase/CMakeLists.txt new file mode 100644 index 0000000000..46ffce3d5c --- /dev/null +++ b/pandatool/src/imagebase/CMakeLists.txt @@ -0,0 +1,20 @@ +set(P3IMAGEBASE_HEADERS + imageBase.h + imageFilter.h + imageReader.h + imageWriter.h imageWriter.I +) + +set(P3IMAGEBASE_SOURCES + imageBase.cxx + imageFilter.cxx + imageReader.cxx + imageWriter.cxx +) + +composite_sources(p3imagebase P3IMAGEBASE_SOURCES) +add_library(p3imagebase STATIC ${P3IMAGEBASE_HEADERS} ${P3IMAGEBASE_SOURCES}) +target_link_libraries(p3imagebase p3progbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/imageprogs/CMakeLists.txt b/pandatool/src/imageprogs/CMakeLists.txt new file mode 100644 index 0000000000..d0f77b99a8 --- /dev/null +++ b/pandatool/src/imageprogs/CMakeLists.txt @@ -0,0 +1,19 @@ +add_executable(image-fix-hidden-color imageFixHiddenColor.cxx imageFixHiddenColor.h) +target_link_libraries(image-fix-hidden-color p3imagebase) +install(TARGETS image-fix-hidden-color DESTINATION bin) + +add_executable(image-info imageInfo.cxx imageInfo.h) +target_link_libraries(image-info p3imagebase) +install(TARGETS image-info DESTINATION bin) + +add_executable(image-resize imageResize.cxx imageResize.h) +target_link_libraries(image-resize p3imagebase) +install(TARGETS image-resize DESTINATION bin) + +add_executable(image-transform-colors imageTransformColors.cxx imageTransformColors.h) +target_link_libraries(image-transform-colors p3imagebase) +install(TARGETS image-transform-colors DESTINATION bin) + +add_executable(image-trans imageTrans.cxx imageTrans.h) +target_link_libraries(image-trans p3imagebase) +install(TARGETS image-trans DESTINATION bin) diff --git a/pandatool/src/lwo/CMakeLists.txt b/pandatool/src/lwo/CMakeLists.txt new file mode 100644 index 0000000000..c7c7f33c35 --- /dev/null +++ b/pandatool/src/lwo/CMakeLists.txt @@ -0,0 +1,69 @@ +set(P3LWO_HEADERS + config_lwo.h + iffChunk.h iffChunk.I + iffGenericChunk.h iffGenericChunk.I + iffId.h iffId.I + iffInputFile.h iffInputFile.I + lwoBoundingBox.h + lwoChunk.h + lwoClip.h + lwoDiscontinuousVertexMap.h + lwoGroupChunk.h + lwoHeader.h lwoHeader.I + lwoInputFile.h lwoInputFile.I + lwoLayer.h + lwoPoints.h + lwoPolygons.h lwoPolygonTags.h + lwoStillImage.h + lwoSurfaceBlockAxis.h lwoSurfaceBlockChannel.h lwoSurfaceBlockCoordSys.h + lwoSurfaceBlockEnabled.h lwoSurfaceBlock.h lwoSurfaceBlockHeader.h + lwoSurfaceBlockImage.h lwoSurfaceBlockOpacity.h lwoSurfaceBlockProjection.h + lwoSurfaceBlockRefObj.h lwoSurfaceBlockRepeat.h lwoSurfaceBlockTMap.h + lwoSurfaceBlockTransform.h lwoSurfaceBlockVMapName.h lwoSurfaceBlockWrap.h + lwoSurfaceColor.h + lwoSurface.h + lwoSurfaceParameter.h + lwoSurfaceSidedness.h + lwoSurfaceSmoothingAngle.h + lwoTags.h + lwoVertexMap.h +) + +set(P3LWO_SOURCES + config_lwo.cxx + iffChunk.cxx + iffGenericChunk.cxx + iffId.cxx + iffInputFile.cxx + lwoBoundingBox.cxx + lwoChunk.cxx + lwoClip.cxx + lwoDiscontinuousVertexMap.cxx + lwoGroupChunk.cxx + lwoHeader.cxx + lwoInputFile.cxx + lwoLayer.cxx + lwoPoints.cxx + lwoPolygons.cxx + lwoPolygonTags.cxx + lwoStillImage.cxx + lwoSurfaceBlockAxis.cxx lwoSurfaceBlockChannel.cxx lwoSurfaceBlockCoordSys.cxx + lwoSurfaceBlock.cxx lwoSurfaceBlockEnabled.cxx lwoSurfaceBlockHeader.cxx + lwoSurfaceBlockImage.cxx lwoSurfaceBlockOpacity.cxx lwoSurfaceBlockProjection.cxx + lwoSurfaceBlockRefObj.cxx lwoSurfaceBlockRepeat.cxx lwoSurfaceBlockTMap.cxx + lwoSurfaceBlockTransform.cxx lwoSurfaceBlockVMapName.cxx lwoSurfaceBlockWrap.cxx + lwoSurfaceColor.cxx + lwoSurface.cxx + lwoSurfaceParameter.cxx + lwoSurfaceSidedness.cxx + lwoSurfaceSmoothingAngle.cxx + lwoTags.cxx + lwoVertexMap.cxx +) + +composite_sources(p3lwo P3LWO_SOURCES) +add_library(p3lwo STATIC ${P3LWO_HEADERS} ${P3LWO_SOURCES}) +target_link_libraries(p3lwo p3pandatoolbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/lwoegg/CMakeLists.txt b/pandatool/src/lwoegg/CMakeLists.txt new file mode 100644 index 0000000000..da4d156bdc --- /dev/null +++ b/pandatool/src/lwoegg/CMakeLists.txt @@ -0,0 +1,27 @@ +set(P3LWOEGG_HEADERS + cLwoClip.h cLwoClip.I + cLwoLayer.h cLwoLayer.I + cLwoPoints.h cLwoPoints.I + cLwoPolygons.h cLwoPolygons.I + cLwoSurfaceBlock.h cLwoSurfaceBlock.I + cLwoSurfaceBlockTMap.h cLwoSurfaceBlockTMap.I + cLwoSurface.h cLwoSurface.I + lwoToEggConverter.h lwoToEggConverter.I +) + +set(P3LWOEGG_SOURCES + cLwoClip.cxx + cLwoLayer.cxx + cLwoPoints.cxx + cLwoPolygons.cxx + cLwoSurfaceBlock.cxx + cLwoSurfaceBlockTMap.cxx + cLwoSurface.cxx + lwoToEggConverter.cxx +) + +add_library(p3lwoegg STATIC ${P3LWOEGG_HEADERS} ${P3LWOEGG_SOURCES}) +target_link_libraries(p3lwoegg p3lwo p3eggbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/lwoprogs/CMakeLists.txt b/pandatool/src/lwoprogs/CMakeLists.txt new file mode 100644 index 0000000000..9232882376 --- /dev/null +++ b/pandatool/src/lwoprogs/CMakeLists.txt @@ -0,0 +1,7 @@ +add_executable(lwo-scan lwoScan.cxx lwoScan.h) +target_link_libraries(lwo-scan p3progbase p3lwo) +install(TARGETS lwo-scan DESTINATION bin) + +add_executable(lwo2egg lwoToEgg.cxx lwoToEgg.h) +target_link_libraries(lwo2egg p3lwoegg p3eggbase p3progbase) +install(TARGETS lwo2egg DESTINATION bin) diff --git a/pandatool/src/miscprogs/CMakeLists.txt b/pandatool/src/miscprogs/CMakeLists.txt new file mode 100644 index 0000000000..c3964de618 --- /dev/null +++ b/pandatool/src/miscprogs/CMakeLists.txt @@ -0,0 +1,3 @@ +add_executable(bin2c binToC.cxx binToC.h) +target_link_libraries(bin2c p3progbase) +install(TARGETS bin2c DESTINATION bin) diff --git a/pandatool/src/objegg/CMakeLists.txt b/pandatool/src/objegg/CMakeLists.txt new file mode 100644 index 0000000000..839c176be8 --- /dev/null +++ b/pandatool/src/objegg/CMakeLists.txt @@ -0,0 +1,19 @@ +set(P3OBJEGG_HEADERS + config_objegg.h + eggToObjConverter.h + objToEggConverter.h + objToEggConverter.I +) + +set(P3OBJEGG_SOURCES + config_objegg.cxx + eggToObjConverter.cxx + objToEggConverter.cxx +) + +composite_sources(p3objegg P3OBJEGG_SOURCES) +add_library(p3objegg STATIC ${P3OBJEGG_HEADERS} ${P3OBJEGG_SOURCES}) +target_link_libraries(p3objegg p3eggbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/objprogs/CMakeLists.txt b/pandatool/src/objprogs/CMakeLists.txt new file mode 100644 index 0000000000..47fbbc058a --- /dev/null +++ b/pandatool/src/objprogs/CMakeLists.txt @@ -0,0 +1,7 @@ +add_executable(egg2obj eggToObj.cxx eggToObj.h) +target_link_libraries(egg2obj p3objegg p3eggbase) +install(TARGETS egg2obj DESTINATION bin) + +add_executable(obj2egg objToEgg.cxx objToEgg.h) +target_link_libraries(obj2egg p3objegg p3eggbase p3progbase) +install(TARGETS obj2egg DESTINATION bin) diff --git a/pandatool/src/palettizer/CMakeLists.txt b/pandatool/src/palettizer/CMakeLists.txt new file mode 100644 index 0000000000..17eed82416 --- /dev/null +++ b/pandatool/src/palettizer/CMakeLists.txt @@ -0,0 +1,56 @@ +set(P3PALETTIZER_HEADERS + config_palettizer.h + destTextureImage.h + eggFile.h + filenameUnifier.h + imageFile.h + omitReason.h + paletteGroup.h + paletteGroups.h + paletteImage.h + palettePage.h + palettizer.h + pal_string_utils.h + sourceTextureImage.h + textureImage.h + textureMemoryCounter.h + texturePlacement.h + texturePosition.h + textureProperties.h + textureReference.h + textureRequest.h + txaFile.h + txaLine.h +) + +set(P3PALETTIZER_SOURCES + config_palettizer.cxx + destTextureImage.cxx + eggFile.cxx + filenameUnifier.cxx + imageFile.cxx + omitReason.cxx + paletteGroup.cxx + paletteGroups.cxx + paletteImage.cxx + palettePage.cxx + palettizer.cxx + pal_string_utils.cxx + sourceTextureImage.cxx + textureImage.cxx + textureMemoryCounter.cxx + texturePlacement.cxx + texturePosition.cxx + textureProperties.cxx + textureReference.cxx + textureRequest.cxx + txaFile.cxx + txaLine.cxx +) + +composite_sources(p3palettizer P3PALETTIZER_SOURCES) +add_library(p3palettizer STATIC ${P3PALETTIZER_HEADERS} ${P3PALETTIZER_SOURCES}) +target_link_libraries(p3palettizer p3progbase p3converter) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/pandatoolbase/CMakeLists.txt b/pandatool/src/pandatoolbase/CMakeLists.txt index 7e615b2d0b..93d9aae35e 100644 --- a/pandatool/src/pandatoolbase/CMakeLists.txt +++ b/pandatool/src/pandatoolbase/CMakeLists.txt @@ -20,5 +20,12 @@ composite_sources(p3pandatoolbase P3PANDATOOLBASE_SOURCES) add_library(p3pandatoolbase STATIC ${P3PANDATOOLBASE_HEADERS} ${P3PANDATOOLBASE_SOURCES}) target_link_libraries(p3pandatoolbase panda) +# ptloader - a module - may need to link in libraries in this package, so: +if(MODULE_TYPE STREQUAL "MODULE") + set_target_properties(p3pandatoolbase PROPERTIES + POSITION_INDEPENDENT_CODE ON + INTERFACE_POSITION_INDEPENDENT_CODE ON) +endif() + # This is only needed for binaries in the pandatool package. It is not useful # for user applications, so it is not installed. diff --git a/pandatool/src/pfmprogs/CMakeLists.txt b/pandatool/src/pfmprogs/CMakeLists.txt new file mode 100644 index 0000000000..0b5bad8978 --- /dev/null +++ b/pandatool/src/pfmprogs/CMakeLists.txt @@ -0,0 +1,9 @@ +add_executable(pfm-bba + config_pfmprogs.cxx config_pfmprogs.h + pfmBba.cxx pfmBba.h) +target_link_libraries(pfm-bba p3progbase) +install(TARGETS pfm-bba DESTINATION bin) + +add_executable(pfm-trans pfmTrans.cxx pfmTrans.h) +target_link_libraries(pfm-trans p3progbase) +install(TARGETS pfm-trans DESTINATION bin) diff --git a/pandatool/src/ptloader/CMakeLists.txt b/pandatool/src/ptloader/CMakeLists.txt new file mode 100644 index 0000000000..c3335c37d4 --- /dev/null +++ b/pandatool/src/ptloader/CMakeLists.txt @@ -0,0 +1,18 @@ +set(P3PTLOADER_HEADERS + config_ptloader.h + loaderFileTypePandatool.h +) + +set(P3PTLOADER_SOURCES + config_ptloader.cxx + loaderFileTypePandatool.cxx +) + +composite_sources(p3ptloader P3PTLOADER_SOURCES) +add_library(p3ptloader ${MODULE_TYPE} ${P3PTLOADER_HEADERS} ${P3PTLOADER_SOURCES}) +set_target_properties(p3ptloader PROPERTIES DEFINE_SYMBOL BUILDING_PTLOADER) +target_link_libraries(p3ptloader + p3dxfegg p3fltegg p3lwoegg p3objegg p3vrmlegg p3xfileegg + p3converter) + +install(TARGETS p3ptloader DESTINATION ${MODULE_DESTINATION}) diff --git a/pandatool/src/vrml/CMakeLists.txt b/pandatool/src/vrml/CMakeLists.txt new file mode 100644 index 0000000000..0e0b410659 --- /dev/null +++ b/pandatool/src/vrml/CMakeLists.txt @@ -0,0 +1,30 @@ +add_bison_target(vrmlParser.cxx vrmlParser.yxx DEFINES vrmlParser.h PREFIX vrmlyy) +add_flex_target(vrmlLexer.cxx vrmlLexer.lxx CASE_INSENSITIVE PREFIX vrmlyy) + +set(P3VRML_HEADERS + parse_vrml.h + standard_nodes.h + vrmlLexerDefs.h + vrmlNode.h + vrmlNodeType.h + vrmlParserDefs.h +) + +set(P3VRML_SOURCES + parse_vrml.cxx + standard_nodes.cxx + vrmlNode.cxx + vrmlNodeType.cxx +) + +set(P3VRML_PARSER_SOURCES + vrmlParser.cxx + vrmlLexer.cxx +) + +composite_sources(p3vrml P3VRML_SOURCES) +add_library(p3vrml STATIC ${P3VRML_HEADERS} ${P3VRML_SOURCES} ${P3VRML_PARSER_SOURCES}) +target_link_libraries(p3vrml p3pandatoolbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/vrmlegg/CMakeLists.txt b/pandatool/src/vrmlegg/CMakeLists.txt new file mode 100644 index 0000000000..621aa1a852 --- /dev/null +++ b/pandatool/src/vrmlegg/CMakeLists.txt @@ -0,0 +1,18 @@ +set(P3VRMLEGG_HEADERS + indexedFaceSet.h + vrmlAppearance.h + vrmlToEggConverter.h +) + +set(P3VRMLEGG_SOURCES + indexedFaceSet.cxx + vrmlAppearance.cxx + vrmlToEggConverter.cxx +) + +composite_sources(p3vrmlegg P3VRMLEGG_SOURCES) +add_library(p3vrmlegg STATIC ${P3VRMLEGG_HEADERS} ${P3VRMLEGG_SOURCES}) +target_link_libraries(p3vrmlegg p3vrml p3eggbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/vrmlprogs/CMakeLists.txt b/pandatool/src/vrmlprogs/CMakeLists.txt new file mode 100644 index 0000000000..0657671d51 --- /dev/null +++ b/pandatool/src/vrmlprogs/CMakeLists.txt @@ -0,0 +1,7 @@ +add_executable(vrml-trans vrmlTrans.cxx vrmlTrans.h) +target_link_libraries(vrml-trans p3progbase p3vrml) +install(TARGETS vrml-trans DESTINATION bin) + +add_executable(vrml2egg vrmlToEgg.cxx vrmlToEgg.h) +target_link_libraries(vrml2egg p3vrmlegg p3eggbase p3progbase) +install(TARGETS vrml2egg DESTINATION bin) diff --git a/pandatool/src/xfile/CMakeLists.txt b/pandatool/src/xfile/CMakeLists.txt new file mode 100644 index 0000000000..597cb1eb58 --- /dev/null +++ b/pandatool/src/xfile/CMakeLists.txt @@ -0,0 +1,56 @@ +add_bison_target(xParser.cxx xParser.yxx DEFINES xParser.h PREFIX xyy) +add_flex_target(xLexer.cxx xLexer.lxx CASE_INSENSITIVE PREFIX xyy) + +set(P3XFILE_HEADERS + config_xfile.h + standard_templates.h + windowsGuid.h windowsGuid.I + xFileArrayDef.h xFileArrayDef.I + xFileDataDef.h xFileDataDef.I + xFileDataNode.h xFileDataNode.I + xFileDataNodeReference.h xFileDataNodeReference.I + xFileDataNodeTemplate.h xFileDataNodeTemplate.I + xFileDataObjectArray.h xFileDataObjectArray.I + xFileDataObjectDouble.h xFileDataObjectDouble.I + xFileDataObject.h xFileDataObject.I + xFileDataObjectInteger.h xFileDataObjectInteger.I + xFileDataObjectString.h xFileDataObjectString.I + xFile.h xFile.I + xFileNode.h xFileNode.I + xFileParseData.h xFileParseData.I + xFileTemplate.h xFileTemplate.I + xLexerDefs.h + xParserDefs.h +) + +set(P3XFILE_SOURCES + config_xfile.cxx + standard_templates.cxx + windowsGuid.cxx + xFileArrayDef.cxx + xFile.cxx + xFileDataDef.cxx + xFileDataNode.cxx + xFileDataNodeReference.cxx + xFileDataNodeTemplate.cxx + xFileDataObjectArray.cxx + xFileDataObject.cxx + xFileDataObjectDouble.cxx + xFileDataObjectInteger.cxx + xFileDataObjectString.cxx + xFileNode.cxx + xFileParseData.cxx + xFileTemplate.cxx +) + +set(P3XFILE_PARSER_SOURCES + xParser.cxx + xLexer.cxx +) + +composite_sources(p3xfile P3XFILE_SOURCES) +add_library(p3xfile STATIC ${P3XFILE_HEADERS} ${P3XFILE_SOURCES} ${P3XFILE_PARSER_SOURCES}) +target_link_libraries(p3xfile p3pandatoolbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/xfileegg/CMakeLists.txt b/pandatool/src/xfileegg/CMakeLists.txt new file mode 100644 index 0000000000..606079e539 --- /dev/null +++ b/pandatool/src/xfileegg/CMakeLists.txt @@ -0,0 +1,22 @@ +set(P3XFILEEGG_HEADERS + xFileAnimationSet.h xFileAnimationSet.I + xFileFace.h xFileMaker.h + xFileMaterial.h xFileMesh.h xFileNormal.h + xFileToEggConverter.h + xFileVertex.h xFileVertexPool.h +) + +set(P3XFILEEGG_SOURCES + xFileAnimationSet.cxx + xFileFace.cxx xFileMaker.cxx + xFileMaterial.cxx xFileMesh.cxx xFileNormal.cxx + xFileToEggConverter.cxx + xFileVertex.cxx +) + +composite_sources(p3xfileegg P3XFILEEGG_SOURCES) +add_library(p3xfileegg STATIC ${P3XFILEEGG_HEADERS} ${P3XFILEEGG_SOURCES}) +target_link_libraries(p3xfileegg p3xfile p3eggbase) + +# This is only needed for binaries in the pandatool package. It is not useful +# for user applications, so it is not installed. diff --git a/pandatool/src/xfileprogs/CMakeLists.txt b/pandatool/src/xfileprogs/CMakeLists.txt new file mode 100644 index 0000000000..907ebea1ee --- /dev/null +++ b/pandatool/src/xfileprogs/CMakeLists.txt @@ -0,0 +1,11 @@ +add_executable(egg2x eggToX.cxx eggToX.h) +target_link_libraries(egg2x p3xfileegg p3eggbase p3progbase) +install(TARGETS egg2x DESTINATION bin) + +add_executable(x-trans xFileTrans.cxx xFileTrans.h) +target_link_libraries(x-trans p3progbase p3xfile) +install(TARGETS x-trans DESTINATION bin) + +add_executable(x2egg xFileToEgg.cxx xFileToEgg.h) +target_link_libraries(x2egg p3xfileegg p3eggbase p3progbase) +install(TARGETS x2egg DESTINATION bin)