+ unify DLL export defines to namespace names

git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5000 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
This commit is contained in:
wmayer
2011-10-10 13:44:52 +00:00
commit 120ca87015
4155 changed files with 2965978 additions and 0 deletions

21
BuildAll.bat Normal file
View File

@@ -0,0 +1,21 @@
@echo off
rem Build script, uses vcbuild to completetly build FreeCAD
rem start again nice (LOW)
if "%1"=="" (
start /WAIT /LOW /B cmd.exe /V /C %~s0 go_ahead
goto:eof
)
rem set the aprobiated Variables here or outside in the system
if NOT DEFINED VCDIR set VCDIR=C:\Program Files\Microsoft Visual Studio 9.0
rem Register VS Build programms
call "%VCDIR%\VC\vcvarsall.bat"
rem "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:"C:\SW_Projects\CAD\FreeCAD_10" /closeonend:3
rem Start the Visuall Studio build process
"%VCDIR%\VC\vcpackages\vcbuild.exe" FreeCAD_trunk.sln "Debug|Win32"
"%VCDIR%\VC\vcpackages\vcbuild.exe" FreeCAD_trunk.sln "Debug|Win32"
"%VCDIR%\VC\vcpackages\vcbuild.exe" FreeCAD_trunk.sln "Release|Win32"

19
BuildRelease.ini Normal file
View File

@@ -0,0 +1,19 @@
# Version of the release. The Revision number you must specify at the command line
[Version]
Major: 0
Minor: 7
Alias: Bespin
Url: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk
# Here comes the paths of the needed tools to build a release
# the path can be simple or as full path. Depends if you have your tool in PATH
[Tools]
svn: C:\Program Files (x86)\Subversion\svn.exe
wget: C:\Libs\FreeCADLibs\FreeCADLibs6.2\bin\wget.exe
candle: C:\Libs\Libs\wix_30\candle.exe
light: C:\Libs\Libs\wix_30\light.exe
hhc: C:\Program Files (x86)\HTML Help Workshop\hhc.exe
# needet until the build is completely done with cMake
[Libs] # Libs used in the build
FreecadLib: C:\Libs\FreeCADLibs\FreeCADLibs6.2

342
BuildRelease.py Normal file
View File

@@ -0,0 +1,342 @@
#! python
# -*- coding: utf-8 -*-
# (c) 2007 Jürgen Riegel GPL
Usage = """BuildRelease - Build script to build a complete FreeCAD release
Usage:
BuildRelease [Optionen] ReleaseNbr
Options:
-h, --help print this help
-b, --buildPath specify the output path where the build takes place
-i, --ini-file specify the ini file to use
This script will build a complete FreeCAD distribution which includes:
* Check out fresh source
* packing source
* Set the Version and Release numbers
* Gathering change log
* completele build FreeCAD
* run tests
* build source docu
* build user docu
* build installer
* upload to source forge
On failure of one of these steps the script will stop.
Each step writes tones of info in the log file.
There is one error log file.
Autor:
(c) 2007 Juergen Riegel
juergen.riegel@web.de
Licence: GPL
Version:
0.1
"""
#
# Its inteded only to used by the maintainer
import os, sys, getopt
from subprocess import call,Popen,PIPE
from time import sleep
from zipfile import ZipFile,ZIP_DEFLATED
import tarfile
from string import find
import ConfigParser
import time
# global information
Release = 0
Major = 0
Minor = 7
Alias = ""
FileName = ""
BuildPath = "D:/ReleaseBuilds"
Log = None
ErrLog = None
Config = None
def CallProcess(args,Msg,ret=True):
Anim = ['-','\\','|','/']
sys.stdout.write(Msg+': ')
Log.write("====== Call: " + args[0] + '\n')
SVN = Popen(args,
stdout=PIPE, stderr = ErrLog)
i = 0
while(SVN.poll() == None):
line = SVN.stdout.readline()
if(line):
Log.write(line.replace('\n',''))
sys.stdout.write(chr(8) + Anim[i%4])
i+=1
sleep(0.2)
#ErrLog.write(SVN.stdout.read())
sys.stdout.write(chr(8) + "done\n")
if(not SVN.returncode == 0 and ret):
print "Process returns: ",SVN.returncode
raise
# Step 2 & 3
def CheckOut():
CallProcess([Config.get('Tools','svn'),
"checkout",
"-r",
`Release`,
"https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk",
"../"+FileName],
"2) Checking out")
sys.stdout.write('3) Write version files: ')
Version = open("src/Build/Version.h","w")
Version.write('#define FCVersionMajor "' + `Major` + '"\n')
Version.write('#define FCVersionMinor "' + `Minor` + '"\n')
Version.write('#define FCVersionName "' + Alias + '"\n')
Version.write('#define FCRevision "' + `Release` + '"\n')
Version.write('#define FCRepositoryURL "' + "https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk/src" + '"\n')
Version.write('#define FCCurrentDateT "'+time.asctime()+'" \n')
Version.close()
Version = open("installer/Version.wxi","w")
Version.write('<Include> \n')
Version.write(' <?define FCVersionMajor = ' + `Major` + ' ?>\n')
Version.write(' <?define FCVersionMinor = ' + `Minor` + ' ?>\n')
Version.write(' <?define FCVersionRevision =' + `Release` + ' ?>\n')
Version.write(' <?define FCVersionAlias = "' + Alias + '" ?>\n')
Version.write('</Include> \n')
Version.close()
sys.stdout.write('done\n')
#Step 4
def PackSourceZip():
def addAll(dirFrom, ZipSrcFile):
for file in os.listdir(dirFrom): # for files/dirs here
if(not file==".svn" and not file== FileName+'_source.zip'):
pathFrom = os.path.join(dirFrom, file)
if not os.path.isdir(pathFrom): # copy simple files
ZipSrcFile.write(pathFrom,pathFrom.replace('.\\',FileName+'\\'))
Log.write("Insert: "+ pathFrom + '\n')
else:
addAll(pathFrom,ZipSrcFile)
sys.stdout.write("4) Pack zip source files: ")
SourceFile = ZipFile(FileName+'_source.zip','w',ZIP_DEFLATED,True)
addAll('.',SourceFile)
SourceFile.close()
sys.stdout.write("done \n")
# Step 5
def PackSourceTar():
def addAll(dirFrom, ZipTarFile):
for file in os.listdir(dirFrom): # for files/dirs here
if(not file==".svn" and not file== FileName+'_source.zip'):
pathFrom = os.path.join(dirFrom, file)
if not os.path.isdir(pathFrom): # copy simple files
ZipTarFile.add(pathFrom,pathFrom.replace('.\\',FileName+'\\'))
Log.write("Insert: "+ pathFrom + '\n')
else:
addAll(pathFrom,ZipTarFile)
sys.stdout.write("5) Pack tar source files: ")
SourceFile = tarfile.open(FileName+'_source.tgz','w:gz')
addAll('.',SourceFile)
SourceFile.close()
sys.stdout.write("done \n")
# Step 6 & 7
def BuildAll():
import fcbt.FileTools
LibPack = Config.get('Libs','FreeCADLib')
sys.stdout.write('6) Copy resources: ')
os.mkdir('./bin')
fcbt.FileTools.cpall(LibPack + '/bin','./bin')
os.mkdir('./include')
fcbt.FileTools.cpall(LibPack + '/include','./include')
os.mkdir('./lib')
fcbt.FileTools.cpall(LibPack + '/lib','./lib')
os.mkdir('./doc')
fcbt.FileTools.cpall(LibPack + '/doc','./doc')
sys.stdout.write('done\n')
CallProcess(["BuildAll.bat"],
"7) Build all")
# Step 8 & 9
def HelpFile():
import wiki2chm
if not os.path.isdir('doc'):
os.mkdir('doc')
if not os.path.isdir('doc/tmp'):
os.mkdir('doc/tmp')
CallProcess([Config.get('Tools','wget'),'-k', '-r', '-l5', '-P', 'doc/tmp', '-nd',
'-R', '*action=*',
'-R', '*title=Special*',
'-R', '*title=Talk*',
'-R', '*oldid=*',
'-R', '*printable=yes*',
'--domains=apps.sourceforge.net',
'--append-output=doc/tmp/wget.log',
'http://apps.sourceforge.net/mediawiki/free-cad/index.php?title=Online_Help_Toc'],
"8) Download docu")
sys.stdout.write("9) Fix up CSS: ")
open('doc/tmp/chm.css','w').write(open('src/Tools/chm.css').read())
wiki2chm.WikiBaseUrl ='http://apps.sourceforge.net/mediawiki/free-cad/'
wiki2chm.TocPageName ='Online_Help_Toc'
wiki2chm.BasePath ='doc/tmp/'
wiki2chm.Output = Log
wiki2chm.replaceCSS()
wiki2chm.WriteProject()
wiki2chm.readToc()
sys.stdout.write("done \n")
# Step 10
def CompileHelp():
import fcbt.FileTools
CallProcess([Config.get('Tools','hhc'),'doc/tmp/Online_Help_Toc.hhp'],'10)Compile help:',False)
fcbt.FileTools.cpfile('doc/tmp/FreeCAD.chm','doc/FreeCAD.chm')
fcbt.FileTools.cpfile('doc/tmp/FreeCAD.chm',FileName+'_helpfile.chm')
def BuildInstaller():
import fcbt.FileTools
LibPack = Config.get('Libs','FreeCADLib')
fcbt.FileTools.cpfile('lib/Microsoft_VC80_CRT_x86.msm','installer/Microsoft_VC80_CRT_x86.msm')
fcbt.FileTools.cpfile('lib/policy_8_0_Microsoft_VC80_CRT_x86.msm','installer/policy_8_0_Microsoft_VC80_CRT_x86.msm')
CallProcess([Config.get('Tools','candle'),
'-out', 'installer\\',
'installer\\FreeCAD.wxs',
'installer\\FreeCADBase.wxs',
'installer\\LibPack.wxs',
'installer\\FreeCADDoc.wxs',
'installer\\FreeCADModules.wxs',
],'11)Compile installer:',False)
CallProcess([Config.get('Tools','light'),
'-ext', 'WixUIExtension',
'-cultures:en-us',
'-out', 'installer\\FreeCAD.msi',
'installer\\FreeCAD.wixobj',
'installer\\FreeCADBase.wixobj',
'installer\\LibPack.wixobj',
'installer\\FreeCADDoc.wixobj',
'installer\\FreeCADModules.wixobj',
],'12)Build installer:',False)
fcbt.FileTools.cpfile('installer/FreeCAD.msi',FileName+'_installer.msi')
def SendFTP():
from ftplib import FTP
ftp = FTP('upload.sf.net')
Log.write(ftp.login() + '\n')
Log.write(ftp.cwd("/incoming") + '\n')
Log.write(ftp.sendcmd('PASV') + '\n')
Log.write(ftp.sendcmd('TYPE I') + '\n')
sys.stdout.write('13) Send source ZIP: ')
f = open(FileName+'_source.zip', "r")
Log.write(ftp.storbinary('STOR '+ FileName+'_source.zip', f) + '\n')
sys.stdout.write('done\n14) Send source tgz: ')
f = open(FileName+'_source.tgz', "r")
Log.write(ftp.storbinary('STOR '+ FileName+'_source.tgz', f) + '\n')
sys.stdout.write('done\n15) Send installer: ')
f = open(FileName+'_installer.msi', "r")
Log.write(ftp.storbinary('STOR '+ FileName+'_installer.msi', f) + '\n')
f.close()
ftp.close()
def main():
global Release, Major, Minor, Alias, FileName, BuildPath, Log, ErrLog, Config
IniFile = "BuildRelease.ini"
try:
opts, args = getopt.getopt(sys.argv[1:], "hb:", ["help","buildPath="])
except getopt.GetoptError:
# print help information and exit:
sys.stderr.write(Usage)
sys.exit(2)
# checking on the options
for o, a in opts:
if o in ("-h", "--help"):
sys.stderr.write(Usage)
sys.exit()
if o in ("-b", "--buildPath"):
BuildPath = a
if o in ("-i", "--ini-file"):
IniFile = a
# runing through the files
if (not len(args) == 1):
sys.stderr.write(Usage)
Release = int(args[0])
Config = ConfigParser.ConfigParser()
Config.readfp(open(IniFile))
Alias = Config.get('Version','Alias')
Major = Config.getint('Version','Major')
Minor = Config.getint('Version','Minor')
# creating the directory and switch to
FileName = 'FreeCAD_' + `Major` + '.' + `Minor` + '.' + `Release`
print "=== Building:", FileName, '\n'
BuildPath = BuildPath + '/' + FileName
# set tool path
sys.path.append((BuildPath + '/src/Tools') )
OldCwd = os.getcwd()
print "1) Creating Build directory: ", BuildPath
if not os.path.isdir(BuildPath):
os.mkdir(BuildPath)
os.chdir(BuildPath)
Log = open("BuildRelease.log","w")
ErrLog = open("BuildReleaseErrors.log","w")
try:
CheckOut()
PackSourceZip()
PackSourceTar()
BuildAll()
HelpFile()
CompileHelp()
BuildInstaller()
#SendFTP()
except:
Log.close()
ErrLog.close()
Err = open("BuildReleaseErrors.log","r")
sys.stderr.write("!!!!!!!!! Fehler aufgetreten:\n")
sys.stderr.write(Err.read())
raise
os.chdir(OldCwd)
Log.close()
ErrLog.close()
print "Press any key"
sys.stdin.readline()
if __name__ == "__main__":
main()

462
CMakeLists.txt Normal file
View File

@@ -0,0 +1,462 @@
project(FreeCAD_trunk)
set(FREECAD_VERSION "0.12")
# Needed for salomesmesh
if(CMAKE_COMPILER_IS_GNUCXX)
ENABLE_LANGUAGE(Fortran)
endif(CMAKE_COMPILER_IS_GNUCXX)
set(PACKAGE_NAME "FreeCAD")
set(PACKAGE_VERSION_MAJOR "0")
set(PACKAGE_VERSION_MINOR "12")
set(PACKAGE_VERSION_PATCH "2237")
set(PACKAGE_VERSION "${PACKAGE_VERSION_MAJOR}.${PACKAGE_VERSION_MINOR}.${PACKAGE_VERSION_PATCH}")
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
# include local modules
include(AddFileDependencies)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cMake")
if(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)
#if(CMAKE_CFG_INTDIR STREQUAL .)
# No Debug/Release output paths
set(DEBUG_MAIN_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
set(RELEASE_MAIN_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
#else(CMAKE_CFG_INTDIR STREQUAL .)
# set(DEBUG_MAIN_OUTPUT_PATH ${CMAKE_BINARY_DIR}/src/Main/Debug)
# set(RELEASE_MAIN_OUTPUT_PATH ${CMAKE_BINARY_DIR}/src/Main/Release)
#endif(CMAKE_CFG_INTDIR STREQUAL .)
if(WIN32)
set(PLATFORM_CP xcopy /Y /S)
set(PLATFORM_MK mkdir)
else(WIN32)
set(PLATFORM_CP cp)
set(PLATFORM_MK mkdir -p)
endif(WIN32)
# ================================================================================
if(CMAKE_COMPILER_IS_GNUCXX)
include(cMake/ConfigureChecks.cmake)
configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
add_definitions(-DHAVE_CONFIG_H)
add_definitions(-Wno-write-strings)
add_definitions(-Wno-deprecated)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
endif(CMAKE_COMPILER_IS_GNUCXX)
# ================================================================================
if(WIN32)
SET(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR})
else(WIN32)
# SET(CMAKE_INSTALL_PREFIX "/usr/lib/freecad")
endif(WIN32)
# ================================================================================
# == Win32 is default behaviour use the LibPack copied in Source tree ============
if(MSVC)
OPTION(FREECAD_LIBPACK_USE "Use the LibPack to Build FreeCAD (only Win32 so far)." ON)
set(FREECAD_LIBPACK_DIR ${CMAKE_SOURCE_DIR} CACHE PATH "Directory of the FreeCAD LibPack")
else(MSVC)
OPTION(FREECAD_LIBPACK_USE "Use the LibPack to Build FreeCAD (only Win32 so far)." OFF)
set(FREECAD_LIBPACK_DIR "" CACHE PATH "Directory of the FreeCAD LibPack")
endif(MSVC)
# ================================================================================
# == All the options for the build process ============
OPTION(FREECAD_BUILD_GUI "Build FreeCAD Gui. Otherwise you have only the command line and the Python import module." ON)
OPTION(FREECAD_MAINTAINERS_BUILD "Build FreeCAD for Maintainers, with Docu and 3rd party libs. On Windows the Installer is build." OFF)
OPTION(FREECAD_BUILD_CAM "Build the FreeCAD CAM module and the needed libs, be aware, unfinished code!" OFF)
OPTION(FREECAD_BUILD_FEM "Build the FreeCAD FEM module, be aware, unfinished code!" ON)
OPTION(FREECAD_BUILD_SANDBOX "Build the FreeCAD Sandbox module which is only for testing purposes" OFF)
# ================================================================================
if(FREECAD_LIBPACK_USE)
# checking for a unique file in LibPack location to make sure the right version of the LibPack is there
find_file(FREECAD_LIBPACK_CHECKFILE6X boost_program_options-vc80-mt-gd.lib ${FREECAD_LIBPACK_DIR}/lib )
find_file(FREECAD_LIBPACK_CHECKFILE7X boost_program_options-vc90-mt-gd-1_39.lib ${FREECAD_LIBPACK_DIR}/lib )
find_file(FREECAD_LIBPACK_CHECKCUSTOM boost_program_options-vc90-mt-gd-1_41.lib ${FREECAD_LIBPACK_DIR}/lib )
IF(FREECAD_LIBPACK_CHECKFILE6X)
include(cMake/UseLibPack6x.cmake)
set(FREECAD_LIBPACK6 FOUND CACHE STRING "Displays if the libpack has been found")
set(FREECAD_LIBPACK7 NOTFOUND CACHE STRING "Displays if the libpack has been found")
MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK7)
ELSEIF(FREECAD_LIBPACK_CHECKFILE7X)
include(cMake/UseLibPack7x.cmake)
set(FREECAD_LIBPACK6 NOTFOUND CACHE STRING "Displays if the libpack has been found")
MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK6)
set(FREECAD_LIBPACK7 FOUND CACHE STRING "Displays if the libpack has been found")
ELSEIF(FREECAD_LIBPACK_CHECKCUSTOM)
include(cMake/UseLibPackCustom.cmake)
set(FREECAD_LIBPACKX FOUND CACHE STRING "Displays if the libpack has been found")
ELSE(FREECAD_LIBPACK_CHECKFILE6X)
MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK_CHECKFILE6X FREECAD_LIBPACK_CHECKFILE7X)
message(SEND_ERROR "Could not find neither LibPack 6.x nor 7.x in specified location:" ${FREECAD_LIBPACK_DIR})
ENDIF(FREECAD_LIBPACK_CHECKFILE6X)
# -------------------------------- Swig ----------------------------------
find_package(SWIG)
IF(NOT SWIG_FOUND)
MESSAGE("SWIG was not found, build no SWIG binding for pivy")
ENDIF(NOT SWIG_FOUND)
else(FREECAD_LIBPACK_USE)
MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK_CHECKFILE6X FREECAD_LIBPACK_CHECKFILE7X)
# ================================================================================
# == for other OSes search the packages ==========================================
# -------------------------------- Python --------------------------------
find_package(PythonLibs REQUIRED)
find_package(PythonInterp REQUIRED)
IF(NOT PYTHONLIBS_FOUND)
MESSAGE("Python not found, install python!")
ENDIF(NOT PYTHONLIBS_FOUND)
# -------------------------------- Boost --------------------------------
SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.41.0" "1.39.0" "1.38.0" "1.37.0"
"1.36.1" "1.36.0" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34"
"1.33.1" "1.33.0" "1.33" )
find_package(Boost COMPONENTS filesystem program_options regex signals system thread REQUIRED)
# -------------------------------- XercesC --------------------------------
find_package(XercesC REQUIRED)
# -------------------------------- ZLIB --------------------------------
find_package(ZLIB REQUIRED)
# -------------------------------- OpenCasCade --------------------------------
#first, look for OpenCASCADE Community Edition (OCE)
#if OCE is installed in a nonstandard location, add -DOCE_DIR=/path/to/dir/containing/OCEConfig.cmake
# when configuring with cmake, i.e. cmake .. -DOCE_DIR=/usr/share/cmake
if( NOT DEFINED OCE_DIR )
if( UNIX )
set( OCE_DIR "/usr/local/share/cmake/" )
else()
set( OCE_DIR "c:/OCE-0.4.0/share/cmake" )
endif()
endif()
find_package ( OCE )
if( ${OCE_FOUND} )
message("-- OpenCASCADE Community Edition has been found.")
add_definitions ( -DHAVE_CONFIG_H )
set( OCC_LIBRARIES "TKFillet;TKMesh;TKernel;TKG2d;TKG3d;TKMath;TKIGES;TKSTL;TKShHealing;TKXSBase;TKBool;TKBO;TKBRep;TKTopAlgo;TKGeomAlgo;TKGeomBase;TKOffset;TKPrim;TKSTEP;TKSTEPBase;TKSTEPAttr;TKHLR" ) #lib list copied from FreeCAD's FindOpenCasCade.cmake
set( OCC_INCLUDE_DIR ${OCE_INCLUDE_DIRS} )
set( OCC_FOUND ${OCE_FOUND} )
else() #look for OpenCASCADE
find_package(OpenCasCade)
IF(NOT OCC_FOUND)
MESSAGE("Neither OpenCASCADE Community Edition nor OpenCasCade were found: will not build CAD modules!")
ELSE()
MESSAGE("-- OpenCASCADE include directory: ${OCC_INCLUDE_PATH}")
MESSAGE("-- OpenCASCADE shared libraries directory: ${OCC_LIB_PATH}")
ENDIF()
endif()
# -------------------------------- f2c ----------------------------------
IF(OCC_FOUND)
find_package(F2C REQUIRED)
ENDIF(OCC_FOUND)
# -------------------------------- Salome SMESH --------------------------
# Salome SMESH sources are under src/3rdParty now
IF(OCC_FOUND)
set(SMESH_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc)
set(SMESH_LIBRARIES
StdMeshers
#MEFISTO2
SMESH
DriverUNV
SMESHDS
DriverSTL
DriverDAT
Driver
SMDS
)
set(SMESH_FOUND TRUE)
ENDIF(OCC_FOUND)
#find_package(SMESH)
#IF(NOT SMESH_FOUND)
# MESSAGE("Salome SMESH was not found!")
#ENDIF(NOT SMESH_FOUND)
# -------------------------------- OpenCV --------------------------------
# not needed at the moment
#find_package(OpenCV REQUIRED)
# -------------------------------- Swig ----------------------------------
find_package(SWIG)
IF(NOT SWIG_FOUND)
MESSAGE("SWIG was not found, build no SWIG binding for pivy")
ENDIF(NOT SWIG_FOUND)
# -------------------------------- Eigen --------------------------------
#find_package(Eigen2)
find_package(Eigen3)
# -------------------------------- ODE ----------------------------------
find_package(ODE)
# -------------------------------- Qt --------------------------------
# sets ${QT_LIBRARIES}
SET(QT_MIN_VERSION 4.1.4)
set(QT_USE_QTNETWORK TRUE)
set(QT_USE_QTXML TRUE)
if(FREECAD_BUILD_GUI)
set(QT_USE_QTOPENGL TRUE)
set(QT_USE_QTSVG TRUE)
set(QT_USE_QTUITOOLS TRUE)
set(QT_USE_QTWEBKIT TRUE)
endif(FREECAD_BUILD_GUI)
find_package(Qt4)
include(${QT_USE_FILE})
IF(NOT QT4_FOUND)
MESSAGE("Library qt-4.3 or above is not available, install QT or FreeCAD Gui version will not be built")
ENDIF(NOT QT4_FOUND)
IF(NOT QT_QTWEBKIT_FOUND)
MESSAGE("QT Webkit not found, will not build browser integration!")
ENDIF(NOT QT_QTWEBKIT_FOUND)
# This is a special version of the built in macro qt4_wrap_cpp
# It is required since moc'ed files are now included instead of being added to projects directly
# It adds a reverse dependency to solve this
# This has the unfortunate side effect that some files are always rebuilt
# There is probably a cleaner solution than this
macro(fc_wrap_cpp outfiles )
# get include dirs
QT4_GET_MOC_FLAGS(moc_includes)
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_includes}" "${moc_options}")
set(${outfiles} ${${outfiles}} ${outfile})
add_file_dependencies(${it} ${outfile})
endforeach(it)
endmacro(fc_wrap_cpp)
if(FREECAD_BUILD_GUI)
# -------------------------------- OpenGL --------------------------------
find_package(OpenGL)
# -------------------------------- Coin3D --------------------------------
find_package(Coin3D REQUIRED)
find_package(SoQt REQUIRED)
# ------------------------------ Spaceball -------------------------------
if (WIN32)
#future
else(WIN32)
find_package(Spnav)
endif(WIN32)
# ------------------------------------------------------------------------
endif(FREECAD_BUILD_GUI)
endif(FREECAD_LIBPACK_USE)
# copy build convenient files for M$
if(WIN32)
configure_file(BuildAll.bat ${CMAKE_BINARY_DIR}/BuildAll.bat COPYONLY)
#configure_file(BuildAllNice.bat ${CMAKE_BINARY_DIR}/BuildAllNice.bat COPYONLY)
endif(WIN32)
include(cMake/FreeCadMacros.cmake)
# ================================================================================
# == Global Compiler and Linker Settings =========================================
include_directories(${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src)
# check for 64-bit platform
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
MESSAGE(STATUS "Platform is 64-bit, set -D_OCC64")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_OCC64")
add_definitions(-D_OCC64 )
ELSE(CMAKE_SIZEOF_VOID_P EQUAL 8)
MESSAGE(STATUS "Platform is 32-bit")
ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 8)
IF(MSVC)
# set default compiler settings
#SET (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GF /GY")
SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFC_DEBUG")
# set default libs
SET (CMAKE_C_STANDARD_LIBRARIES "kernel32.lib user32.lib gdi32.lib winspool.lib SHFolder.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib ")
set (CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES}")
# set linker flag /nodefaultlib
set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB")
SET (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB")
# Mark 32 bit executables large address aware so they can use > 2GB address space
# NOTE: This setting only has an effect on machines with at least 3GB of RAM, although it sets the linker option it doesn't set the the linker switch 'Enable Large Addresses'
IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LARGEADDRESSAWARE")
SET (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE")
ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 4)
ELSE(MSVC)
SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFC_DEBUG")
MESSAGE(STATUS "DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}")
ENDIF(MSVC)
IF(MINGW)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mthreads")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthreads")
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -mthreads -Wl,--export-all-symbols")
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -mthreads -Wl,--export-all-symbols")
LINK_LIBRARIES(-lgdi32)
ENDIF(MINGW)
add_subdirectory(src)
add_subdirectory(data)
# ================================================================================
# == Packaging ===================================================================
if(FREECAD_MAINTAINERS_BUILD AND NOT WIN32)
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "An extensible Open Source CAx program")
set(CPACK_PACKAGE_VENDOR "FreeCAD development team")
if(WIN32)
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.Win32")
else(WIN32)
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.Linux")
endif(WIN32)
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/copying.lib")
set(CPACK_PACKAGE_VERSION_MAJOR ${PACKAGE_VERSION_MAJOR})
set(CPACK_PACKAGE_VERSION_MINOR ${PACKAGE_VERSION_MINOR})
set(CPACK_PACKAGE_VERSION_PATCH ${PACKAGE_VERSION_PATCH})
set(CPACK_SOURCE_PACKAGE_FILE_NAME ${PACKAGE_NAME}-${PACKAGE_VERSION})
#for debian: 'cmake .. -DFREECAD_MAINTAINERS_BUILD=TRUE -DCPACK_GENERATOR="DEB"'
IF( CMAKE_SIZEOF_VOID_P EQUAL 4 )
set(PKG_ARCH i386)
ELSE( CMAKE_SIZEOF_VOID_P EQUAL 4 )
set(PKG_ARCH amd64)
ENDIF( CMAKE_SIZEOF_VOID_P EQUAL 4 )
set(CPACK_DEBIAN_PACKAGE_SECTION "science")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "python, oce | opencascade, libqtgui4, libcoin60, libode1, libsoqt4-20, libxerces-c3.1, libgts-0.7-5, zlib1g, libboost-dev, libeigen2-dev")
set(CPACK_PACKAGE_CONTACT "<root@localhost>")
set(CPACK_PACKAGE_FILE_NAME "${PACKAGE_NAME}-${PACKAGE_VERSION}_${PKG_ARCH}")
if(WIN32)
set(CPACK_GENERATOR "ZIP")
set(CPACK_SOURCE_GENERATOR "ZIP")
else(WIN32)
if( CPACK_GENERATOR STREQUAL "" )
set(CPACK_GENERATOR "TGZ")
set(CPACK_SOURCE_GENERATOR "TGZ")
endif()
endif(WIN32)
file(GLOB DOT ".*")
file(GLOB TILD "*~")
set(CPACK_SOURCE_IGNORE_FILES
"${DOT}"
"${TILD}"
".a$"
".am$"
".in$"
".bat$"
".o$"
".so$"
".m4$"
"/_build/"
"/_cmake/"
"/.deps/"
"/.svn/"
"/CMakeFiles/"
"/CVS/"
"/autom4te.cache/"
"/build/"
"/debian/"
"/debug/"
"/docs/"
"/m4/"
"/qt-build/"
"/CxImage/"
"/WindowsInstaller/"
"AdditionalInfo.txt$"
"CMakeCache.txt$"
"Makefile$"
"\\\\.sh$"
"_CPack_"
"71"
"config.h$"
"config.log$"
"config.status$"
"configure$"
"configure.ac$"
"Doxyfile"
"html$"
"stamp-h1$"
".swp$"
"tar.bz2"
"tar.gz"
"~$"
)
#set(CPACK_SOURCE_IGNORE_FILES
# ${CPACK_SOURCE_IGNORE_FILES}
# "/Pivy-0.5/"
#)
set(CPACK_SOURCE_STRIP_FILES "")
include(CPack)
#ADD_CUSTOM_TARGET(DIST make package_source)
endif(FREECAD_MAINTAINERS_BUILD AND NOT WIN32)

908
ChangeLog.txt Normal file
View File

@@ -0,0 +1,908 @@
Version:
* Sketcher module added with constraint solver using SketchFlat
* Add Draft module to installer
* Fix many Python reference counting errors
* Implement edit mode for meshes and shapes
* Property editor for placements added
* Implement Python's number protocol for MatrixPy and VectorPy
* Implement import/export framework
* Workaround for offscreen renderer due to a huge memory leak in Coin 2.4.x
* Support of Qt 4.1.4 in Draft module
* Porting sources to Mac OS X Leopard
* Implement a progress indicator to run with OCC algorithm classes
* Binding for SWIG-generated pythonocc added
Version: 0.7.1779 Date: Sun 14 Dec 2008 +++++++++++++++++++++++++++++
* Implementation of uuid
* Support of transient directories for FreeCAD documents
* Basic support to create SVG files from scenegraph
* Python binding finished for all shape and geometry classes in Part module
* Move to PyCXX 5.4.2
* Class Writer can now insert ascii or bin data in xml stream
* Start porting to OpenCascade 6.3
* Use Tango icon set
Version: 0.7.1672 Date: Sat 25 Oct 2008 +++++++++++++++++++++++++++++
* Update of Windows installer
Version: 0.7.1658 Date: Sat 11 Oct 2008 +++++++++++++++++++++++++++++
* Fix many license issues
* Define QT_NO_CAST_FROM_ASCII to avoid problems with UTF-8 encoded strings
* Support additional module paths in home directory
* Re-implement the "What's this" facility to start the help window with context-sensitive help
* Create Python commands from the user input in the property editor
* Support of groups in property editor
* Implement general export framework
* Implement graphical user-interface for creation of fillets and extrusions
* Add scene inspector for analyzing the OpenInventor scene graph
* Rework online help, prepared for new framework in Qt4.4
Version: 0.7.1514 Date: Sun 03 Aug 2008 +++++++++++++++++++++++++++++
* Add more stuff to the copyright file
* control: add build-dep to python-central
* Abstract interface for geometric data types
* Avoid flickering of cursor when cutting several meshes at once
* Update to the latest debian policy version 3.7.3
* Several bugs fixed with Python GIL
* Make TopoDS_Shape and Geom_Geometry classes accessible from Python
* Make Python interface for algorithms on shapes and geometries
* Support of mesh segments
* Add test/annotation object
* Add simple measurement facility
* Remove OpenCascade dependency in Mesh module
* Thumbnail facility added
* Start cMake support
* Compile with boost 1.35
Version: 0.7.1344 Date: Wed 21 May 2008 +++++++++++++++++++++++++++++
* Write patch file to make builds with OpenCASCADE libs inside but with no
dependency to libopencascade6.2
* New debian package for Feisty
* New package with fixed self-dependency problem
* Embed required OpenCASCADE libs into this package as long as no official
Debian package is available
Version: 0.7.1342 Date: Mon 19 May 2008 +++++++++++++++++++++++++++++
* Switch to new versioning scheme of OpenCASCADE packages
* Re-license all FreeCAD source code to LGPL
Version: 0.7.1316 Date: Sat 26 Apr 2008 +++++++++++++++++++++++++++++
* Support of pivy (Python binding for Coin/SoQt)
* Support of PyQt4
* General support of SWIG modules
* Cleanup code and fix of several race conditions or insecure code (flawfinder)
* UTF-8 support
* Optimize mesh evaluation/validation classes to be faster and using less memory
* Include Pivy -- the Python binding for Coin
Version: 0.7.1031 Date: Fri 04 Jan 2008 +++++++++++++++++++++++++++++
* Qt4 port finished
* Support of Python binding for Qt4
* Support of Python binding for Coin
* Support of entirely in Python written modules
* Added support of model driven architecture for Python binding
* Use boost's signal/slot mechanism to update data
Version: 0.6.645 Date: Tue 24 Jul 2007 ++++++++++++++++++++++++++++++
* Qt4 port started
Version: 0.6.476 Date: Tue 27 Feb 2007 ++++++++++++++++++++++++++++++
* Use revision number in version naming scheme
* Initial Release of Debian/Ubuntu package
Version: 0.5.285 Date: Thu 05 Oct 2006 ++++++++++++++++++++++++++++++
* Use revision number in version naming scheme
* Initial Release of Debian/Ubuntu package
* Optimizations for huge meshes implemented
* Export VRML97 from scenegraph
* Export mesh as compressed VRML
* have only one color bar per scene
* group classes supporting various mesh formats to two classes: MeshOutput and MeshInput
Version: V0.5B8 Date: Tue Aug 01 2006 +++++++++++++++++++++++++++++++
* Write FreeCAD.log to AppData folder
* Use 'HOME' for Linux and 'HOMEDRIVE' for Windows only
* new type FCUInt introduced
* use same compressed color values as Coin3d
* Remove PYTHONPATH stuff
* port to OpenCascade 6.1
* Switch the installer to python23.zip type lib
* PropertyFile added and editor implemented
* Check whether a project file is already open and throw an exception
* Allow to open a project file even if not everything can be loaded e.g. if a module is missing
* Select name if a file instead of directory was given in FileDialog's getOpenFileName() or getSaveFileName() methods
* Bug fixed in harmonizing normals of a mesh
* speed up a lot several algorithms that searches for independant components of a mesh or searches for inhomogenous normals
* make MeshKernel::VisitNeighbourFacets() more robust against topologic errors in mesh
* Option added to do one- or two-side rendering of meshes
* Dialog to enter numbers higher than the maximum of int's, i.e numbers up to 4294967295
* Bug 1449428 (Crash when output to console too long) fixed by replacing vsprintf by vsnprint
* Bug 1558658 (A hidden view with a spinning part consumes CPU-Time) fixed
* Bug 1558622 (Version.h is not generated with a normal build) fixed
* Patches 1559380, 1559154 applied
* Bug 1564726 fixed (Does not compile with GCC 4.1.1)
* Bug 1566863 fixed (Float Property is has limited range [0..12])
* RFE 1566398 impl. (Property editor for App::PropertyEnumeration)
Version: V0.5B7 Date: Thu May 18 2006 +++++++++++++++++++++++++++++++
* move to SVN version control
* added spins to edit line width and point size in display dialog
* Optimized SoFCMeshNode for handling of huge meshes
* Prepend SoCallback node to log all traversing actions (only for debugging)
* command for toggling clipping plane
* command for freezing view positions
* added new ViewProvider for meshes with more than 100.000 triangles using SoFCMeshNode for optimizations
* save/restore of view providers into/from a separate XML file in a project file
* check if project file exists when loading from command line
* using grid to speed up cutting algoritm for huge meshes
* calculate inverse color of mesh color for open edges
* added project properties to App::Document
* added material property class
* allow to disable notification of property container when a property has changed its value
* added dialog to show and set project information
* start moving display relevant properties from DocumentObject (data) classes to the associated ViewProvider (view) classes
* reimplemented dialogs DlgDisplayPropertiesImp and DlgMaterialPropertiesImp
* added ViewProvider class for Python
* separate data and view properties and show in different tabs in the editor
* new methods added to Gui::DocumentPy to get active object and object by name
* add only required Inventor nodes to all ViewProvider subclasses and removed from ViewProviderDocumentObject
* use an additional STL vector to preserve the creation order of objects
* added a group class for document objects and its view provider
* added PropertyPartShape to save/load shapes to/from a document
* rename document member in SoFCSelection after a document has been renamed
* Prepared for OCC 6.1: The modules 'AppMesh', 'AppPartGui', 'AppRaytracing' and 'AppRaytracingGui' need the module 'TKMesh.lib'
* Added a method to XMLReader to get unsigned long from a string
* Make several methods of BaseView const
* Bug fixed in TreeView
* Added new action classes for en/disabling selection and highlighting with their colors
* Bug fixed when opening a project with the same file name
* RFE 1450472 Clear selection of active document only
* SoFCMeshOpenEdge shape node added to render the open edges of a mesh
* print some information in Attach() and Detach() in Observer in debug mode
* delete command objects when application is exiting
* bug fixed in 'Refresh' command
* active view stuff fixed
* proper handling of double clicks with wheel button
* Random color implemented
* Box zoom implementation started
=====================================================================
MOVE TO SUBVERSION
=====================================================================
Version: V0.5B6 Date: Sat Apr 15 2006 +++++++++++++++++++++++++++++++
* renamed Vector3D to Vector3f indicating the precision of float and Vector3d as double respectively
* updated the unittests in Test framework using new API
* Added some experimental properties to mesh viewprovider
* Allow to build up structured menus from within Python
* StdWorkbench::setupContextMenu() implemented
* PropertyStringList added
* Continued implementation of property editor
* Nullify reference to deleted object of dependent objects (Document::remObject)
* Check if the reference is valid in Mesh::Feature::getMesh() and subclasses
* Several bugs in Raytracing module fixed
* API changes in DocumentPy:
- Recompute -> recompute
- activeFeature -> activeDocument
- addFeature -> addObject
- getFeature -> getObject
- removeFeature -> removeObject
- listFeatures -> listObjects
- AddFeature removed
- GetFeature removed
- GetActiveFeature -> getActiveObject
* API changes in Property
- Save(Writer&) -> Save(Writer) const
* API changes in ViewProviderDocumentObject
- attach(App::AbstractFeature*) -> attach(App::DocumentObject*)
* Applied patch 1470733, SetOperation patch
* Applied patch 1470737, new module tritritest
* Fixed bug in ViewProviderDocumentObject::ViewProviderDocumentObject(): pcPointStyle->ref()
* Check for scheme version when loading a project file and handle the reading procedure differently
* RFE 1470745 implemented (material mode: Open Edges)
* show also members of DocumentObjects in Python (implemented in DocumentObjectPy::_getattr)
* show members in MaterialPy, DocumentPy and FeaturePy
* Fixed bugs with C++/Python framework
(NOTE: All C++ classes returning an associated Python object with a reference to itself must NOT return always a new instances
for each call but it must return the same instance, otherwise the Python objects cannot be notified when the C++ object
has been destroyed)
* Allow drag'n'drop for files coming from ZIP files
* More intuitive handling of property editor
Version: V0.5B5 Date: Sat Feb 25 2006 +++++++++++++++++++++++++++++++
* Make use of AC_LIBTOOL_DLOPEN macro for Unix/Linux based systems to allow to create modules.
* Create a loader module (without 'lib' prefix ) for each shared library (with 'lib' prefix)
* The dirty hack to create symlinks during installation has been removed.
* Builder3D Visual debugging facility
* set default tabwidth in editor to 4 char, can be changed in user settings
* block comment/uncomment implemented
* Undo/Redo of block comment or uncomment implemented
* Bug in DocItem class fixed: allow only one item with the same name
* set the dirty flag after Gui::Document has been changed, remove after saving the document
* WildMagic dllexport define (patch 1441148)
* fix assert if missing feature (patch 1441146)
* new modules (patches 1441103, 1441082)
* Fixes for new modules (patch 1441145)
* Specify orthographic or perspective camera in user settings
* Ignore built files in Python script for creation of modules
* Fixing Bug 1442521,
* turn backface culling on/off (RFE 1443940). Seems to work properly with convex geometries only
* Enabled two-side rendering for meshes in case it is not a solid
* Return the edge list by reference in mesh kernel (to avoid memory leak)
* PropertyVectorList implemented
* Use PropertyVectorLists and PropertyFloatLists in Mesh::Curvature feature and its associated view provider
* PropertyColor(List) implemeted
* PropertyMeshKernel added
* move all Projects to NODEFAULTLIBS
* move all Projects to xcopy
* start implementing the link between FreeCAD property and property editor
* New methods in Builder3D (patch 1450695,1451028)
* Set operations (patch 1451026, 1451138, 1451141)
* start const Mesh and MeshProperty
* implement class to evaluate and validate meshes with corresponding feature classes
* dialog added to analyze and repair meshes
* special view providers to display defects of meshes
* delete features from the document
* bug fixed: remove features to be deleted from the selection
* bugs fixed in selection node
* restore original document file name after loading a project file
* start implementing an Inventor node rendering the mesh structure directly
Version: V0.5B4 Date: Sat Feb 04 2006 +++++++++++++++++++++++++++++++
* use type system in selection class
* replace DataStream classes by i/ostream classes
* start standardization of API of exported Python classes
* implement standard factory in Base::Type
* remove Feature and ViewProvider Factory, use Standard
* using update instead of recompute after loading document
* using c++ name in addFeature()
* updating the installer files
* fixing the build Dist scripts
* implementing Comment for Save picture
* implement MIBA
* use type system in workbench classes
* VC8 Port
* Property Pre Callback
* Property Lists started
* FeatureTest
* Run script from editor
Version: V0.5B3 Date: Mon Jan 30 2006 +++++++++++++++++++++++++++++++
* use the zipios++ library for reading from/writing into compressed archives
* update zipios++ sources to current CVS version
* mesh creation with less memory usag (patch from bgrupp)
* a fast algorithm to count edges (2 manifold) without additional memory (patch from bgrupp)
* resolve problems for running macros from file with Microsoft Visual Studio 8.0 (patch from bgrupp)
* I/O of points and meshes in document container file
* fixes memory exception in view provider for meshes
* fixes memory exception when rendering an Inventor node with huge amount of data
* more efficient loading of huge meshes
Version: V0.5B2 Date: Sun Jan 15 2006 +++++++++++++++++++++++++++++++
* implementing Mesh save and restore
* implementing Points save and restore
* Save/Open of compressed XML documents
* Preference page for document
* Setting of document compression level
* set _STLP_USE_NEWALLOC to free memory allocated in associative containers
* implement Open/Save/SaveAs for use from Python
Version: V0.5B1 Date: Jan 15 2006 +++++++++++++++++++++++++++++++
* changes due Version in Installer
Version: V0.3B5 Date: Wed Nov 30 15:56:28 2005 +++++++++++++++++++++++++++++++
* redesign of Command framework finished
* download URL adjusted
* allow to download documentation from SourceForge into another directory
* store user settings under .FreeCAD on Linux platforms
* languageChange f?r CommandGroup and its items
* connect and implement Viewer Preferences and updates
* fixing Display Dialog
* increment reference count of root element before adding to the scenegraph (fixes also the bug with IV examples)
and decrement counter when viewer gets destructed
* bug fixed in destruction of viewer
* moved code from SoFCSelectionAction::callDoAction() to SoFCSelection::doAction() as the selection object must decide what to do, not the action
* Implementing save document (partially)
Version: V0.3B1 Date: Thu Aug 11 06:20:13 2005 +++++++++++++++++++++++++++++++
* Begin Workbench framework redesign
* BUG 1216922 fixed (Bug with active document)
Version: V0.1B120 Date: Tue Jul 26 17:09:13 2005 +++++++++++++++++++++++++++++++
* Move import shapes from Import to Part
* Reworking Feature Property handling
* Implementing Feature Linking
* Add Naming to Features (AddFeature() needs now a Type and a Name
* Moving Vector3D and Matrix4D in Base::
* Moving DataWithProperty in Base::
* Reworking Points
* Points load Ascii
* CurveNet Feature in Part
* Bug 1242877 fixed (Reference counting)
Version: V0.1B119 Date: Wed Jun 29 12:57:43 2005 +++++++++++++++++++++++++++++++
* reworking recalculation of the document
* implementing Feature viewing modes and material
- Python binding for that all
* ViewProvider framework in Inventor viewer
* remove CasCade Viewer
* Interpreter::runString returns now a value
* Improving mouse interaktions
- fix and enable Spin rotation
- implement panTo middle mouse double click
* implementing selection
* using "right" transparency mode
* RFE 1187174 implemented (Calling "print" for internal Python objects)
* Several improvements:
- Command Std_ViewFullScreen switched to toggle command
- Use ESC or F to leave fullscreen mode (hard coded in MDIView)
- Ignore ContextEvents and accelerators while the progress bar is working
- Use double prescision for double in parameter editor
- Consider fullscreen windows in ApplicationWindow::activeView()
* Initial impl. of a simple color legend
* Show progressbar not from beginning but after a few seconds
* Using own event loop (QDialog not exception-safe)
* RFE 1149709 Missing waitcursor implemented (using Sequencer therefore)
* RFE 1211364 Clean up when closing App (using Python's Py_AtExit and Py_Finalize)
* BUG 1232848 Recursion in IsKind()
Version: V0.1B118 Date: Tue Jun 07 15:32:43 2005 +++++++++++++++++++++++++++++++
* Bug 1165895 fixed (Bug in closing document)
* RFE 1223968 implemented (Pasting scripts in the python console)
* Bug 1224686 Action.h: command not found error during linux make
Check for QT_UIC and QT_MOC again after the Qt test
Version: V0.1B117 Date: Sun Mar 20 14:06:55 2005 +++++++++++++++++++++++++++++++
* Mesh data structure added to Mesh module
* Feature import for STL files added
* Viewprovider for meshes added
* Integration of latest Image module source
* RFE 1159671 implemented (elements in alphabetic order)
* Finishing drag&drop multible files
* Finishing open from command line and droping on Programm icon
* solving load dependand modules
* more convenient Python console
* Bug 1149706 fixed (Cannot load CAD curves)
* RFE 1214187 implemented (Remove views from main window)
Version: V0.1B116 Date: Wed Mar 16 23:19:23 2005 +++++++++++++++++++++++++++++++
* dummy build
Version: V0.1B115 Date: Sun Feb 27 22:01:44 2005 +++++++++++++++++++++++++++++++
* dummy build
Version: V0.1B114 Date: Sun Feb 13 17:07:39 2005 +++++++++++++++++++++++++++++++
* Encapsulation of 'wget' in NetworkRetriever
* RFE 1100311 Message if wget cannot be found
* Bug 1124689 fixed (Problems when all MDI windows closed)
* Heavy bug in View3DInventorEx fixed
* Check default parameter in FCParameterGrp::GetASCII() and use "" if it is 0
* enhanced NetworkRetriever
* loading/saving of user defined macros
* Logging into file is working under Linux now
* RFE 1149922 implemented (Autoscrolling at startup)
Version: V0.1B113 Date: Fri Feb 11 00:47:38 2005 +++++++++++++++++++++++++++++++
* realize code guidelines in Gui
* Patch 1119485 inserted
* Method to class Tools added to convert between SbSFImage and QImage
Version: V0.1B112 Date: Mon Jan 31 01:57:33 2005 +++++++++++++++++++++++++++++++
* redesign of PrefWidgets
Version: V0.1B111 Date: Sun Jan 30 19:02:55 2005 +++++++++++++++++++++++++++++++
* reactivate Inventor viewer
* build in examples
* new view commands
Version: V0.1B110 Date: Fri Jan 28 16:38:29 2005 +++++++++++++++++++++++++++++++
* fix 1110577
* finish macro module switching
Version: V0.1B109 Date: Mon Jan 24 11:13:15 2005 +++++++++++++++++++++++++++++++
* plugin containing FreeCAD's specific widgets
Note: You have to build the sources under src/Tools/plugins/widgets and
copy the library to $QTDIR/plugins/designer to make use of them
* Changing logging
- -l option switch the file log on
- -lf to a special file
- SetStatus and GetStatus switch on or off the observer
Version: V0.1B108 Date: Sat Jan 15 14:24:52 2005 +++++++++++++++++++++++++++++++
* Moved HtmlView to HelpView * Reimplementaion
* Added class FileChooser ( line edit with button on its right side to browse)
* Merged pref. page "Help viewer" and "Online Help" to one page
* TextEdit class with completion
Version: V0.1B107 Date: Tue Jan 11 11:16:46 2005 +++++++++++++++++++++++++++++++
* put Application and Document (and helper classes) in namespace App
* put exception handling into ParameterPy wrapper
* PIMPLE document in class and py class
* put the whole document python methodes with the macros and exceptions
* removing doctype and put Feature handling into the document
* Bug 1100780 fixed (no color in editor after first start)
Version: V0.1B106 Date: Mon Jan 10 11:16:24 2005 +++++++++++++++++++++++++++++++
* fixed Bug 1099103 by fixing HasGroup in ParameterPy
Version: V0.1B105 Date: Mon Jan 03 16:06:30 2005 +++++++++++++++++++++++++++++++
* RFE 1076842 implemented (overlong MDi tabs)
* Bug 1076836 fixed (Focus problem with MDI)
* Redesign of PrefWidget & WindowParameter
* ProgressBar shows remaining time
* Bug fixed in removing groups from parameters
* Update Commands tab in Customize dialog after creating any macro commands
* Allow to modify existing macro commands
* FileIconProvider class improved
* PyResource class improved
* updated README.Linux
* clear out Action.cpp/h
* use QCString instead of QString for all prefPath and prefEntry properties. This is because of i18n
* Translator class added
* .ts files updated
* Change language on the fly
Version: V0.1B104 Date: Tue Dec 21 22:15:28 2004 +++++++++++++++++++++++++++++++
* Bug 1078371 fixed (crash of property editor)
Version: V0.1B103 Date: Wed Dec 08 14:33:04 2004 +++++++++++++++++++++++++++++++
* RFE 1080561 (keeping standard toolbars) implemented
* RFE 1080558 (Return in Macro Dialog) implemented
* RFE 1078375 (Report view enhancement) implemented
* Import of STEP and IGES files
Version: V0.1B102 Date: Mon Dec 06 02:15:33 2004 +++++++++++++++++++++++++++++++
* Redesign of undo/redo framework
* Redesign of the customize pages framework
* Simplified impl. of the General and Editor preference pages
Version: V0.1B101 Date: Thu Dec 02 22:32:22 2004 +++++++++++++++++++++++++++++++
* First working experiments with associative parametric modeling
Version: V0.1B100 Date: Mon Nov 29 19:40:56 2004 +++++++++++++++++++++++++++++++
* set up new exception handling for python call back
* implement std property acces in App::Feature
Version: V0.1B99 Date: Fri Nov 26 22:40:56 2004 +++++++++++++++++++++++++++++++
* replace QextMDI by own impl. using QWorkspace and QDockWindow
* Tabbar added to the bottom of the workspace area
Version: V0.1B98 Date: Fri Nov 12 18:31:46 2004 +++++++++++++++++++++++++++++++
Version: V0.1B97 Date: Thu Nov 11 22:40:19 2004 +++++++++++++++++++++++++++++++
Version: V0.1B96 Date: Tue Nov 9 00:29:38 2004 +++++++++++++++++++++++++++++++
* Impl. of a property editor as described in "Practical Qt"
Version: V0.1B95 Date: Wed Nov 03 17:34:53 2004 +++++++++++++++++++++++++++++++
* Insert CutFeature
* Automatic Property validation
Version: V0.1B94 Date: Sat Oct 23 18:58:52 2004 +++++++++++++++++++++++++++++++
* finished implementation of the Tip of the day
* splitted several big files in smaller ones
* namespace Gui::Kexi for property editor
* namespace Gui::Dialog * documentation for most dialogs
* use QToolBox provided by Qt instead of StackBar
* removed most of unneeded includes (not in PCH) to speed up compilation
* use own code convention on several classes
Version: V0.1B93 Date: Thu Oct 14 21:55:08 2004 +++++++++++++++++++++++++++++++
* features now inserted in the document and get called by a function
Version: V0.1B92 Date: Sun Oct 03 17:55:31 2004 +++++++++++++++++++++++++++++++
* using namespaces in several modules in Gui now
* documentation
Version: V0.1B91 Date: Tue Sep 21 15:34:55 2004 +++++++++++++++++++++++++++++++
* New organsiation of Build scripts in fcbt (FreeCADBuildTool)
* first experiments with namespaces With Console (FCConsole) and Interpreter
* DocTypePy object for document behavior implented
Version: V0.1B90 Date: Tue Sep 07 19:25:03 2004 +++++++++++++++++++++++++++++++
* Clean up path finding
* port to OCC 5.2
- switch to new iostream (finaly!!!)
Version: V0.1B89 Date: Fri Aug 20 19:03:18 2004 +++++++++++++++++++++++++++++++
* pimple App/Application and App/Document
* change python export
Version: V0.1B87 Date: Thu Jun 03 23:47:13 2004 +++++++++++++++++++++++++++++++
* several minor bugs fixed
* load settings at startup made in preferences
* use Qt splashscreen
Version: V0.1B86 Date: Thu May 06 21:15:32 2004 +++++++++++++++++++++++++++++++
* removed EnvPrints and put it in Config
Version: V0.1B85 Date: Sun Apr 18 01:22:41 2004 +++++++++++++++++++++++++++++++
* Configure script finished, FreeCAD is now running under Linux :-)),
start linux port of the modules now
Version: V0.1B84 Date: Wed Apr 07 15:59:56 2004 +++++++++++++++++++++++++++++++
* Completely rework init phase and main.cpp
Version: V0.1B83 Date: Mon Apr 5 00:42:17 2004 +++++++++++++++++++++++++++++++
* using Qt's qmake tool to build FreeCAD
* FreeCAD now is running under Debian in console mode :-)
but in GUI mode it crashes after the splashscreen appeared :-(
Version: V0.1B82 Date: Sat Mar 20 20:28:27 2004 +++++++++++++++++++++++++++++++
* working configure script producing shared libraries
Version: V0.1B81 Date: Fri Jan 23 18:28:15 2004 +++++++++++++++++++++++++++++++
* connect Python callback functions to QWidget signals
Version: V0.1B80 Date: Wed Jan 07 13:36:29 2004 +++++++++++++++++++++++++++++++
* initial Python binding using Qt's WidgetFactory framework
* Scintilla-Binding reimplemented
* Autowaitcursor improved
* a first version of python console added
Version: V0.1B79 Date: Thu Dec 18 21:48:48 2003 +++++++++++++++++++++++++++++++
* included tkinter into libPack
* using PyUnit and unittestgui.py in test framework
Version: V0.1B78 Date: Sun Nov 23 13:15:15 2003 +++++++++++++++++++++++++++++++
* some fixes for the installer
- using the right Mod dir in case of Installer
- Using absolute Doc path
- using Start/Program for Shortcuts
Version: V0.1B77 Date: Fri Nov 14 14:56:14 2003 +++++++++++++++++++++++++++++++
* Finished Setup stuff
* Removed all relativ paths
* config HomePath is now not in bin anymore
* all config files one dir up
* FC runs now from every derectory
* remove Startup and Install script
Version: V0.1B76 Date: Sat Nov 08 14:47:32 2003 +++++++++++++++++++++++++++++++
* spent own module for BitmapFactory
* make internationalization much more flexible and compile all the *.ts files
into the application (no need of *.qm files at runtime any more)
* new factory for scripts, widgets and languages
* change FreeCAD and Projects to run with first Version of LibPack
Version: V0.1B75 Date: Sat Nov 01 18:38:15 2003 +++++++++++++++++++++++++++++++
* changes on the Env handling for the LibPack
- EnvMacros.h added
* Startup bat
* Tools to make Binary and Setup distributions
* Internationalization is now supported
Version: V0.1B74 Date: Fri Oct 31 00:27:14 2003 +++++++++++++++++++++++++++++++
* add function RegisterIcon() in ApplicationWindow
Version: V0.1B73 Date: Mon Sep 29 00:36:57 2003 +++++++++++++++++++++++++++++++
* dependencies from header files reduced to speed up compilation
* PIMPLed the ApplicationWindow class
* make the python methods in ApplicationWindow more robust
* improved the custom widget framework
Version: V0.1B72 Date: Wed Sep 24 19:06:32 2003 +++++++++++++++++++++++++++++++
* make customizable widget framework much more flexible (from python)
Version: V0.1B71 Date: Sun Sep 14 17:38:19 2003 +++++++++++++++++++++++++++++++
* make a template application; just run MakeApp.py with application name
Version: V0.1B69 Date: Sun Jul 27 13:29:20 2003 +++++++++++++++++++++++++++++++
* several bugs fixed in property view
* new item types implemented
* make what() method of exception class to const
(because you should use const <exc. class>& in catch block)
* use the document provider classes for the whatsthis stuff
Version: V0.1B68 Date: Wed Jul 23 19:46:41 2003 +++++++++++++++++++++++++++++++
* Add Feature Attribute
* Add Function driver
* Implement Test Command 2
Version: V0.1B67 Date: Sun Jul 20 00:23:56 2003 +++++++++++++++++++++++++++++++
* Precompiled header stuff again
* improved the spin box
* Report output window added
Version: V0.1B66 Date: Sun Jul 13 17:15:34 2003 +++++++++++++++++++++++++++++++
* draw transparent the additional area of resized pixmaps
* draw a pixmap over another pixmap
* a special spin box setting the value by mouse move
* reimplementation of the WhatsThis framework
* several commands
* improved drag and drop for the commandline
Version: V0.1B65 Date: Sat Jul 12 11:44:20 2003 +++++++++++++++++++++++++++++++
* finssh doc framework for basic use
Version: V0.1B64 Date: Sun Jun 15 01:20:15 2003 +++++++++++++++++++++++++++++++
* Recent file list (MRU)
* improvements in drawing dropdown button
* allow to disable drag of menu items
* bug fixed in load/save of window settings
* Inventor Test command
* Inventor BREP binding
* examiner viewer
Version: V0.1B63 Date: Sun Jun 08 20:21:25 2003 +++++++++++++++++++++++++++++++
* Adding the OCC Browser
* Adding PropertyView
* Tree heading layout
* Settings dialog for Scintilla
* switch between several view by clicking CTRL+Tab
* Debug interface in FCInterpreter
* switch between several styles
* drop down button completely new reimplemented
Version: V0.1B62 Date: Sat May 31 11:53:56 2003 +++++++++++++++++++++++++++++++
* redesign of Document view modell
* removing ViewContainer
* adding the OnHasMsg methodes
* switching some stdCommands to message stile to allow views with own document
* moving scintila to a passiv view modell
* updated to new version of Scintilla (1.53)
Version: V0.1B61 Date: Sat May 24 17:35:52 2003 +++++++++++++++++++++++++++++++
* binding for scintilla
* switching the observer to templates
* adding SoQt to the source
* the template observer the M$ STL dont work any more
Version: V0.1B60 Date: Wed May 21 21:18:53 2003 +++++++++++++++++++++++++++++++
* finishing close, save and update stuff
Version: V0.1B59 Date: Sun May 18 11:03:48 2003 +++++++++++++++++++++++++++++++
* qextmdi added
* some changes in close flow, still not finished
* fix close stuff!
Version: V0.1B59 Date: Thu May 17 15:40:24 2003 +++++++++++++++++++++++++++++++
* scintilla added
* pragmas set for windows only
* bug fixed in Buttongroug
* add string for CustomWidget where to store
Version: V0.1B58 Date: Thu May 01 20:40:24 2003 +++++++++++++++++++++++++++++++
* patch from werner
* precompiled header (werner)
Version: V0.1B57 Date: Fri Apr 25 16:18:12 2003 +++++++++++++++++++++++++++++++
* New modules for the ToptDS and Geometry wrapping
* Script command for macro customizing
Version: V0.1B56 Date: Tue Apr 22 18:38:49 2003 +++++++++++++++++++++++++++++++
* finish Macro recording
* switching toggle commands
* View preferences page
* some bugfixing (werner)
* QT3 fixes (werner)
* DnD changes (werner)
Version: V0.1B55 Date: Fri Apr 18 23:08:12 2003 +++++++++++++++++++++++++++++++
* add macro manager
Version: V0.1B54 Date: Thu Apr 17 12:19:12 2003 +++++++++++++++++++++++++++++++
* commitin the patch from WErner
- still problems with the TreeBar
Version: V0.1B53 Date: Sun Apr 13 15:33:23 2003 +++++++++++++++++++++++++++++++
* patch from Werner about Linux
* rezising the tree and the Icons
Version: V0.1B52 Date: Thu Apr 10 21:17:20 2003 +++++++++++++++++++++++++++++++
* insert the TreeDockBar
Version: V0.1B51 Date: Sun Apr 06 21:27:35 2003 +++++++++++++++++++++++++++++++
* Realy big patch from Werner
- Fix a problem with the paning in MouseModel
- Fixing workbench binding for std. menus
- switch to QT_VER for easier changing QT Version
- fix cmd_name bug in CmdBar
- making command line dropabel (QT3)
- frame for 3Dview
- time in about dialog ;-)
Version: V0.1B50 Date: Fri Apr 04 22:10:24 2003 +++++++++++++++++++++++++++++++
* Fix on the window rewrite
* some work on the Linux port
Version: V0.1B49 Date: Thu Apr 03 22:45:35 2003 +++++++++++++++++++++++++++++++
* Master redisign of the window system, not yet full working
Version: V0.1B48 Date: Sun Mar 30 15:06:23 2003 +++++++++++++++++++++++++++++++
* Big patch from Werner about:
- feeding toolbars and Commandbar and menus from the parameterts
- customizing works with positions in command bar and toolbar
- customizing by draging from menu into toolbar and commandbar
Version: V0.1B47 Date: Fri Mar 28 18:24:36 2003 +++++++++++++++++++++++++++++++
* Import App Module added
* removing Part.py and PartGui.py
Version: V0.1B46 Date: Wed Mar 26 18:02:11 2003 +++++++++++++++++++++++++++++++
* new methodes in ParameterGrp (IsEmpty(), HasGroup() )
Version: V0.1B45 Date: Thu Mar 20 21:05:21 2003 +++++++++++++++++++++++++++++++
* Testframe for Parameter and removal
Version: V0.1B44 Date: Wed Mar 19 21:41:52 2003 +++++++++++++++++++++++++++++++
* deletion of Parameter and Grps
* Observer delete notification
Version: V0.1B43 Date: Sun Mar 16 22:32:35 2003 +++++++++++++++++++++++++++++++
* startet Undo Redo logic
Version: V0.1B42 Date: Thu Mar 13 21:36:58 2003 +++++++++++++++++++++++++++++++
* changes in Customize Dialog
Version: V0.1B41 Date: Sat Mar 08 19:16:05 2003 +++++++++++++++++++++++++++++++
* again new resource concept for commands
* python command object
* test application
- implemented some basic tests
Version: V0.1B40 Date: Tue Mar 04 21:53:02 2003 +++++++++++++++++++++++++++++++
* Activiti update
* new resource concept in commands
* Command groups
* Command belonging to AppModules
* Checking on unsaved files in close()
Version: V0.1B39 Date: Mon Mar 03 12:32:14 2003 +++++++++++++++++++++++++++++++
* include werners patch
Version: V0.1B38 Date: Thu Feb 27 22:19:35 2003 +++++++++++++++++++++++++++++++
* fix of memory leack in CmdBar (werner)
* start rebulding FCCommand framework
Version: V0.1B37 Date: Tue Feb 25 20:29:19 2003 +++++++++++++++++++++++++++++++
* massiv improved costomize dialog (werner)
- sorting position of toolbars
Version: V0.1B36 Date: Sat Feb 22 18:12:19 2003 +++++++++++++++++++++++++++++++
* fix python problem (Py_INCREF(Py_None))!
Version: V0.1B35 Date: Wed Feb 19 19:41:39 2003 +++++++++++++++++++++++++++++++
* new Linux patch (Vaclav)
* sequencer break windows only (werner)
* run methode in CommandLine (werner)
Version: V0.1B34 Date: Sun Feb 16 11:55:21 2003 +++++++++++++++++++++++++++++++
* finish the Html-view prefernces dialog (werner)
* making unique defines for operating system in Config.h
* GetActiveWorkbench methode
* included VC7 projects (werner)
Version: V0.1B33 Date: Fri Feb 14 19:58:58 2003 +++++++++++++++++++++++++++++++
* dynamic cinfiguration dialog (Werner)
- first preference dialog for the html view
* Full path parameter implemented
* some fixes in config registry
Version: V0.1B32 Date: Sun Feb 09 22:16:10 2003 +++++++++++++++++++++++++++++++
* fix debug module loading
* implementing startup config registrie and access functions in App.
* implementing Doc Template logic and Part Template
Version: V0.1B31 Date: Fri Feb 07 22:26:22 2003 +++++++++++++++++++++++++++++++
* ifdefs for QT 3 and 2.3 usage (werner)
Version: V0.1B30 Date: Thu Feb 06 20:47:18 2003 +++++++++++++++++++++++++++++++
* fix for the CommandBar (Werner)
* fix for module loding
Version: V0.1B29 Date: Wed Feb 05 09:22:38 2003 +++++++++++++++++++++++++++++++
* patch from Werner
- some small changes
- rewritten Command Bar
* some work on the Part module (now loading in release)
Version: V0.1B28 Date: Fri Jan 31 17:58:13 2003 +++++++++++++++++++++++++++++++
* switching from Stlport IOSTREAM to VC6 iostream
* removing FC container wrapping
* starting serios work on module loading in part and sketcher
Version: V0.1B27 Date: Sun Jan 26 21:25:59 2003 +++++++++++++++++++++++++++++++
* Lot of stuff from Werner
- New customize dialog
- lot of work on preferences
Version: V0.1B26 Date: Tue Jan 21 05:59:01 2003 +++++++++++++++++++++++++++++++
* Preferences Widget Framework (Werner)
- New module WidgetFactory
- New modeul PrefWidget
Version: V0.1B25 Date: Sun Jan 19 18:20:51 2003 +++++++++++++++++++++++++++++++
* Big Linux port patch from Vaclav
- some fixes on implicite type conversion (Vaclav)
- moving all .cxx to .cpp mainly in gui
- moving DlgCusomizeImpl to Imp
- and InitGui to GuiInit
- rmoving X() macro (trouble on Linux)
- Linux Gui console (Vaclav)
- Using new sstream on Linux (Vaclac)
- fixing some case stuff in include (Vaclav)
* some work on the main MouseModel (Werner)
Version: V0.1B24 Date: Sun Jan 12 22:15:29 2003 +++++++++++++++++++++++++++++++
* switching workbenches
Version: V0.1B23 Date: Fri Jan 10 17:43:13 2003 +++++++++++++++++++++++++++++++
* fix in part module
Version: V0.1B22 Date: Thu Jan 09 22:16:02 2003 +++++++++++++++++++++++++++++++
* Add FCBmpFactory
* New Methodes in Gui. (python)
Version: V0.1B21 Date: Mon Jan 06 20:53:48 2003 +++++++++++++++++++++++++++++++
* Building up Part Application
* starting Test Application
* Adding FCFactory in Base
Version: V0.1B20 Date: Mon Jan 06 11:31:16 2003 +++++++++++++++++++++++++++++++
* Clean up Gui.dsp
* split up std commands
Version: V0.1B19 Date: Sat Jan 04 12:23:49 2003 +++++++++++++++++++++++++++++++
* new DlgCustomize (Werner)
Version: V0.1B18 Date: Fri Jan 03 19:26:56 2003 +++++++++++++++++++++++++++++++
* FirstPreferences Dialog
* First Macro Dialogs
Version: V0.1B17 Date: Thu Jan 02 21:50:27 2003 +++++++++++++++++++++++++++++++
* First Version Parameter Dialog
* New Methodes on FCParameterGrp
Version: V0.1B16 Date: Wed Jan 01 18:06:46 2003 +++++++++++++++++++++++++++++++
* Needed interface in CmdBar (Werner)
* fixes in Parameter
Version: V0.1B15 Date: Wed Jan 01 17:09:53 2003 +++++++++++++++++++++++++++++++
* Changing the install prozess
* implementing the Python toolbar bindings
* Split Init.py in Init and Startup
* Finish verbose mode (-v)
Version: V0.1B14 Date: Mon Dec 30 12:42:22 2002 +++++++++++++++++++++++++++++++
* coupling FCaction on FCCmdBar (Werner)
* New group functions in FCParameter (Juergen)
* Progress Bar (Werner)
Version: V0.1B13 Date: Thu Dec 26 19:58:57 2002 +++++++++++++++++++++++++++++++
* View Commands
* switching StdViews from slots to Messages
* try fixing Dock windows
Version: V0.1B12 Date: Thu Dec 26 14:54:54 2002 +++++++++++++++++++++++++++++++
* New Splasher from Werner
* clean up main (-v option)
* User Parameter
* New Background color
* Werner get the automatic wait cursor to work
* Dimension field in the status bar by Werner
Version: V0.1B11 Date: Fri Dec 20 10:44:09 2002 +++++++++++++++++++++++++++++++
* First simple Implementation of Tree Raw
Version: V0.1B10 Date: Wed Dec 18 21:44:21 2002 +++++++++++++++++++++++++++++++
* fix wrong document bug
* html_view cut off horizontal slider
Version: V0.1B9 Date: Mon Dec 16 14:40:59 2002 +++++++++++++++++++++++++++++++
* First version of Werners waiting cursor
* Activ View finished
* Send Msg to view finished
* Test1 importing BREP
Version: V0.1B8 Date: Mon Dec 09 20:51:27 2002 +++++++++++++++++++++++++++++++
* Fixes for button bar from Werner
* New Std Commands
Version: V0.1B7 Date: Fri Dec 06 17:30:26 2002 +++++++++++++++++++++++++++++++
* insert new button bar from Werner
* Activated view methods and SendMsgToActiveView()
Version: V0.1B6 Date: Thu Dec 05 20:59:11 2002 +++++++++++++++++++++++++++++++
* Clean Up GuiApplication
* Add GUI Console observer

40
Makefile.am Normal file
View File

@@ -0,0 +1,40 @@
ACLOCAL_AMFLAGS = -I m4
SUBDIRS=data src
EXTRA_DIST = \
cMake/ConfigureChecks.cmake \
cMake/FindCoin3D.cmake \
cMake/FindCoin3DDoc.cmake \
cMake/FindEigen2.cmake \
cMake/FindEigen3.cmake \
cMake/FindF2C.cmake \
cMake/FindODE.cmake \
cMake/FindOpenCasCade.cmake \
cMake/FindOpenCV.cmake \
cMake/FindSoQt.cmake \
cMake/FindSpnav.cmake \
cMake/FindXercesC.cmake \
cMake/FreeCadMacros.cmake \
cMake/UseLibPack6x.cmake \
cMake/UseLibPack7x.cmake \
cMake/UseLibPackCustom.cmake \
config.h.cmake \
CMakeLists.txt \
autogen.sh \
BuildAll.bat \
BuildAllNice.bat \
build.sh \
ChangeLog.txt \
copying.lib \
README.Linux \
README.Win32
debian-package:
$(top_srcdir)/package/makedebian.sh
if HAVE_DOXYGEN
devdoc:
doxygen $(top_builddir)/src/Doc/BuildDevDoc.cfg
endif

93
README.Cygwin Normal file
View File

@@ -0,0 +1,93 @@
How to build and run FreeCAD under Cygwin
=========================================
Prerequisites
-------------
To compile FreeCAD, you will need, besides functioning Cygwin environment
and programming tools (like compiler), the following libraries:
o Python (http://www.python.org), >= 2.5.x
o Qt (http://www.trolltech.no), >= 4.1.x
o Coin3D (http://www.coin3d.org), >= 2.4.x
o SoQt (http://www.coin3d.org), >= 1.2.x
o Xerces-c (http://xml.apache.org/dist/xerces-c/)
o zlib (http://www.zlib.net/)
As far as I know, except of Coin3D and SoQt all libraries are available as prebuilt
binary packages from one of the Cygwin mirrors. To install them, first download the
latest version of setup.exe from www.cygwin.com and run it with administrator rights.
Then follow the instructions of the wizard until the list of all available packages
appears. Select the devel files of all the required libraries and install them.
Then download the source tarballs of Coin3D and SoQt and unpack them into a directory
of your choice.
The Coin library can be built with ./configure --disable-msvc;make; make install.
Building SoQt is a bit tricky and I haven't managed yet to build it in a proper way.
There are various problems with X11 functions and Windows API functions which I
don't know how to solve.
And for the Mesh module of FreeCAD the additional libraries
o GTS Library (http://gts.sourceforge.net)
o Wild Magic (http://www.geometrictools.com)
o OpenCASCADE (http://www.opencascade.org), you need >=5.2 here
are required. OpenCASCADE is also needed by the Part and Raytracing modules.
Note: As OpenCASCADE that is also required by the Mesh, Part and Raytracing
modules is not available for Cygwin it is not possible to build them
for this platform. It is planned for the future to move all OpenCASCADE
dependencies of the Mesh module into a separate module so that at least
this module can be built under Cygwin.
Note: All libraries listed above must be built as shared library. Refer to their
documentation to see how to do.
Note: If possible you should enable thread support for the libraries. At least for
Qt thread support is strongly recommended, otherwise you will run into linker
errors at build time of FreeCAD.
Note: zlib might be already on your system, as this is a library that is used
from a lot of other libraries.
Note: There seems to be various problems with Qt's uic tool of the Cygwin port.
Due to these problems it is not possible to run the GUI under Cygwin at the
moment. It is only possible to run the commandline version.
Configuration
-------------
For the build process of FreeCAD we make use of configure scripts.
To have an overview of all options type in ./configure --help, first.
If you have installed all libraries above into standard paths you need not any of the
'--with' options at all. Unless you have installed any library into a non-standard path,
then make use of the --with-XXX-includes or --with-XXX-libs options.
(XXX represents the corresponding library.)
Note: Due to some limitations of the Windows platform it is not possible to build
libraries with unresolved symbols at link time. Thus it is strongly recommended to run
./configure with the option LDFLAGS=-no-undefined, otherwise the creation of shared
libraries fails. For more details see section 11.2.1 Creating Libtool Libraries with
Automake of the libtool documentation.
Note: To specify FreeCAD's root directory it is recommended to use only the '--prefix'
option from the configure script but not the --bindir, --libdir, ... options, because
at startup FreeCAD makes assumptions where its lib-, doc-, .. directories reside.
The default root directory is located in ~/FreeCAD.
If you know how to work with GNU autoconf, feel free to contribute improvements
to our configuration scripts --- that would be great.
Installation
------------
Once you have built the sources successfully using 'make' with 'make install' you can
install FreeCAD onto your machine whereever you want. Go to the directory FreeCAD/bin
and just type in ./FreeCADCmd.
FreeCAD's default root directory resides under ~/FreeCAD, so you don't need root privileges
therefore.

114
README.Linux Normal file
View File

@@ -0,0 +1,114 @@
How to build and run FreeCAD under Linux
========================================
Prerequisites
-------------
To compile FreeCAD you will need, besides functioning Linux
and programming tools (like compiler), the following libraries:
o Python (http://www.python.org), >= 2.5.x
o boost (http://www.boost.org), >= 1.33.1
o Qt (http://www.qtsoftware.com), >= 4.1.x
o Coin3D (http://www.coin3d.org), >= 2.4.x
o SoQt (http://www.coin3d.org), >= 1.2.x
o Xerces-C++ (http://xml.apache.org/dist/xerces-c/), >= 2.6
o zlib (http://www.zlib.net/)
And for the some FreeCAD modules the additional libraries
o OpenCascade (http://www.opencascade.org), >= 5.2
o Eigen2 (http://eigen.tuxfamily.org/index.php?title=Main_Page), >= 2.0.5
o ODE (http://www.ode.org), >= 0.10.x
are required.
Note: zlib might be already on your system, as this is a library that is used
by a lot of libraries, too.
Note: All libraries listed above must be built as shared library. Refer to their
documentation to see how to do.
Note: If possible you should enable thread support for the libraries. At least for
Qt thread support is strongly recommended, otherwise you will run into linker
errors at build time of FreeCAD.
Note: The package for SoQt for Debian based systems may lack of the soqt.m4 macro file.
You should download the file from www.coin3d.org and copy it to /usr/share/aclocal.
Note: The package for SoQt (at least for older Debian based systems) is usually built to link
against Qt3. This, however, causes a segmentation fault when using with FreeCAD because
it links against Qt4 and you get a mixup of Qt3 and Qt4 libraries.
To fix this problem you must download the sources from www.coin3d.org and run
configure with the 'with-qt=DIR' switch specifying the location of Qt4.
Probably, it's best to 'make install' the newly built SoQt into a different directory
than the installed SoQt to avoid to corrupt your package database and/or to keep other
applications working. When configuring FreeCAD you have to use the '--with-soqt=DIR'
switch specifying the path of the newly installed SoQt.
For newer Debian releases this already solved by a new package that links against Qt4.
Note: For OpenCascade there does not exist an official .deb package for older Debian based systems
and many other distributions, so you have to download the latest version from www.opencascade.org.
Install the package normally, be aware that the installer is a java program that requires
the official java runtime edition from Sun, not the open-source java (gij) that is bundled
with Debian or Ubuntu. Install it if needed:
sudo apt-get remove gij
sudo apt-get install sun-java5-bin
Be careful, if you use gij java with other things like a browser plugin, they won't work
anymore. Now start the installer with
java -jar setup.jar
With Debian Lenny this issue is solved. There is an OpenCascade package currently in the
non-free section.
During the compilation some Python scripts get executed. So the Python interpreter has
to work properly.
Optionally, you can build the Qt plugin that provides all custom widgets of FreeCAD
we need for the Qt Designer. The sources are located under Tools/plugins/widget.
So far, we don't provide a makefile but calling 'qmake plugin.pro' creates it and
calling 'make' will create the library libFreeCAD_widgets.so. To make known this library
to your Qt Designer you have to copy the file to $QTDIR/plugin/designer.
On our Wiki you'll find more information to build with different Linux distributions at
http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=CompileOnUnix
Configuration
-------------
For the build process of FreeCAD we make use of configure scripts.
To have an overview of all switches type in ./configure --help, first.
You don't need any of these switches unless you have installed a library into a non-standard
path. In this case make use of the appropriate --with-XXX-include or --with-XXX-lib switches,
please. (XXX stands for the corresponding library.)
Of course, for above mentioned problem with SoQt you should use the '--with-soqt=DIR' switch.
Note: To specify FreeCAD's root directory it is recommended to use only the '--prefix'
switch from the configure script but not the --bindir, --libdir, ... switches, because at startup
FreeCAD makes assumptions about where its module directories are installed.
Installation & Running FreeCAD
------------------------------
Once you have built the sources successfully using 'make', with 'make install' you can
install FreeCAD onto your machine whereever you want. FreeCAD's default root directory
is $HOME/FreeCAD, so you don't need root privileges therefore. To run FreeCAD go to
$PREFIX/FreeCAD/bin and type in ./FreeCAD.
Note: In the past there were a lot of problems that the Part workbench couldn't be loaded.
The problem is that the system wasn't able to find the OpenCascade library files.
To fix this problem you are strongly recommended to add the path of these libraries
to LD_LIBRARY_PATH or even to add it to ld.so.conf and run ldconfig.
So, just have fun!
Werner Mayer <wmayer@users.sourceforge.net>
May 2010

302
README.MinGW Normal file
View File

@@ -0,0 +1,302 @@
How to build and run FreeCAD under MSYS/MinGW
=============================================
Prerequisites
-------------
Here comes a short introduction how to setup a MSYS/MinGW environment
on a Windows system, to build all needed libraries and finally to build
the FreeCAD sources.
o MSYS/MinGW
If not already installed get a MinGW installer from the Sourceforge page at
http://sourceforge.net/projects/mingw. When writing this tutorial the latest
version was mingw-get-inst-20100831.exe. Download and just double-click the
excutable. This installs the compiler and a minimal Windows developer environment.
Make sure to also install the Fortran compiler because there is a single Fortran
file in the 3rd party folder of the FreeCAD sources.
Then as second step MSYS needs to be installed to have an environment to run
./configure scripts which we make heavy use of in order to build all needed
libraries. From the Soureforge page the file MSYS-1.0.11.exe was taken.
A virginal MSYS/MinGW installation lacks of a few modules we later need.
First, we need the utility pexport which can be found in the file
pexports-0.44-1-mingw32-bin.tar.lzma. I don't know where to put this file
and how to make MSYS to install the stuff inside. But the file can be opened
with a ZIP program and the content can be copied to their destination manually.
Here, the pexports utility can go to the bin directory of your MinGW installation.
Then, we also need the development files for the pthreads module which is part
of the file pthreads-w32-2.8.0-3-mingw32-dev.tar.lzma. Just download and copy
the files inside to your MinGW installation.
o CMake
Download the CMake utility from http://www.cmake.org/cmake/resources/software.html.
Get the archive with the binaries for the Windows platform and unpack whereever you
want. There is nothing further to do for this.
o SWIG
Download the SWIG utility from www.swig.org and extract it somewhere on your harddisk.
Third party libraries
---------------------
Here is a description which libraries we need for FreeCAD and how to build them from
the sources. In order not to pollute our MinGW installation with too many files from
the 3rd party libraries we have to build you can e.g. create a sub-directory "local"
in your MSYS installation. If you have installed MSYS under C:\MSYS then simply create
the directory C:\MSYS\1.0\local.
o zlib
For zlib there is already a ready package for MinGW. So, therefore simply download
the file libz-1.2.3-1-mingw32-dev.tar.gz from the Sourceforge site and extract the
two directories lib and include to C:\MSYS\1.0\local.
o Python
It seems to be nearly impossible to build the Python sources directly with the MinGW
compiler. This is because some Python modules require some features which are not
implemented on the MinGW platform. Fortunately, the Python sources are plain C code
and instead of trying to build it with MinGW you can get a ready binary package built
with the MSVC compiler. You can install the Python stuff whereever you want. Afterwards
copy the include folder to C:\MSYS\1.0\local, the DLL can go to C:\MSYS\1.0\local\bin.
Now we also need the so called import library. There we cannot use the .lib file which
comes together with the installer. But it's easy to create one with the pexports/dlltool
utilities. Assuming the Python version is 2.6 do these two steps:
pexports python26.dll > python26.def
dlltool -D python26.dll -d python26.def -l libpython26.dll.a
The file libpython26.dll.a can now be moved to C:\MSYS\1.0\local\lib.
o f2c
For this library we don't need any header files but only the import library to build the
Salome SMESH sources. The easiest way to build this file is:
pexports libgfortran-3.dll > f2c.def
dlltool -D libgfortran-3.dll -d f2c.def -l libf2c.dll.a
The file libf2c.dll.a can now be moved to C:\MSYS\1.0\local\lib.
o xerces-c
Download a source archive from http://xml.apache.org/dist/xerces-c/ and extract it.
Open a MSYS command line window and change to the xerces-c sources. From there run
./configure LDFLAGS=-no-undefined
Once ./configure has finished it's best to move to the source directory because we
don't need to build the dozens of test applications and other stuff. So, do this:
cd src
make
make install
This takes a few minutes to be done.
o boost
For boost there exists a testing package with cmake support. This, however, seems to be
stable enough to build with the MinGW compiler. So, get the file boost-1.41.0.cmake0.zip
from http://sodium.resophonic.com/boost-cmake/1.41.0.cmake0/ and unpack it.
Now, start the cmake-gui.exe from within the MSYS command line. This is necessary for cmake
in order to find the compiler and other stuff. Select the folder of the boost sources with
the CMakeLists.txt file, select a build directory and start Configure. You'll be asked for
which system you want to generate the Makefiles. Select MSYS/Makefiles, not MinGW/Makefiles.
When the configuration step has finished go to the options and search for WINMANGLE_LIBNAMES.
Switch this off because otherwise the boost library names contain the compiler name. This
causes the boost cmake check to fail later when we try to build the FreeCAD sources. And for
the installtion folder choose the directory C:\MSYS\1.0\local.
So, reconfigure boost and press on Generate once it has finished. Close the CMake GUI window
and enter
make
make install
into the command line. This will take a couple of minutes.
o eigen2
Download eigen-2.0.15.tar.gz or any later version from http://eigen.tuxfamily.org/index.php?title=Main_Page.
Unpack the files and start again cmake-gui. Set the installation directory to C:\MSYS\1.0\local
and press on Configure and Generate. Close the window and start the installation with
make
make install
o Qt4
From the Qt website at ftp://ftp.trollech.com you can download already prebuilt packages for the
MinGW platform. But depending on the version you have installed it can happen that they don't fit
together. In this case the source tarball must be downloaded. Use version 4.5.3 or higher. Unpack
the sources and start the configure.exe you'll find inside the sources.
./configure
By default the build the debug and release version. If you only want the release version use the
option "-release".
Configure will ask you some questions under which license you want to use Qt. Choose LGPL here.
Now run the build with
make
This can take quite some time because Qt has become a really huge library over the years. Once the
build has finished run a
make install
to copy the header files to their right place. All the binaries and header files are still inside
the source folder. If you like you can copy all the .dll, .a, and the direcories under "include" to
the subdirectories of C:\MSYS\1.0\local.
o Coin
Get a source archive from www.coin3d.org. Unpack the sources and run
./confiure
make
make install
It may happen that a message dialog pops up due to a missing cygwin1.dll. You simply ignore this.
o SoQt
Get a source archive from www.coin3d.org. Unpack the sources and run
./configure CXXFLAGS="-DCOIN_DLL" --with-qt=/usr/local
make
make install
In case your Qt development files are not under /usr/local choose the correct directory there.
Again a message dialog may pop up due to the missing cygwin1.dll.
o PyQt/sip
Download the sources archives for sip and PyQt4 from www.riverbankcomputing.co.uk.
In order to build sip extract the archive and open a MSYS command line. From within
its source archive call
python configure.py --platform win32-g++ --destdir=/usr/local
make
It may happen that this step aborts because the Python include headers cannot be found.
In this case edit the Makefile and add the include path for the ython headers and also
the path and filename of the Python library.
Unfortunately, the 'make install' command doesn't work because the Makefile was generated
to use Windows batch commands instead of bash commands. Thus, copy the following files to
a path where Python can find it, e.g. /usr/local/bin.
sipconfig.py
sipdistutils.py
siputils.py
sip.pyd
sip.exe
In order to build PyQt4 extract the source archive and open a MSYS command line. Go to the
directory and start
export PATH=/usr/local/lib/:$PATH
python configure.py --destdir=/usr/local/lib/site-packages
make
Since the Makefile doesn't find the Python header files copy them all and also the file sip.h
to a directory where they can be found. A good place seems to be the directory of the Qt sources.
There copy the files to $QTDIR/include. The Python library file python26.dll.a can go $QTDIR/lib.
After the build has finished you have to copy all files that end with .pyd to their destination,
e.g. /usr/local/lib/site-packages/PyQt4. Lateron when you have built the FreeCAD sources you have
to copy the PyQt4 directory and sip.pyd to the FreeCAD bin directory or set a symlink.
o ODE
TODO: Still not clear if this will be used. (http://www.ode.org), >= 0.10.x
o OpenCASCADE
For the build of the OpenCASCADE libraries get the sources from www.opencascade.org or alternatively
it is also possible to download a stripped source tarball from the Debian mirrors which don't include
any fonts and other resource files.
Unpack the sources and download a CMake script from http://opencascade-cmake.googlecode.com/svn/trunk/
and the file occ_config.h.cmake. Copy both files into the 'ros' directory, start cmake-gui from
within a MSYS command line and select MSYS Makefiles. In the options the following switches can be
disabled:
OPENCASCADE_WRAPPERS
OPENCASCADE_VISUALISATION
OPENCASCADE_OCAF
OPENCASCADE_DRAW
Then specify for OPENCASCADE_INSTALL_PREFIX C:/MSYS/1.0/local as destination directory-
Now click the Configure button which takes a while and afterwards the Generate button.
Note: The original sources don't completely compile with MinGW. Therefore you have to apply the patch
OpenCASCADE6.3.0-MinGW.patch from http://code.google.com/p/opencascade-cmake/source/browse/trunk
Note: The original sources includes also a configure script and the Makefile.am files.
But it appeared to be very hard to build the libraries this way. Thus, it highly
recommended to do it the CMake way.
Note: For a couple of libraries the arguments passed to the linker exceeds the number of
allowed characters and thus the linker stops with an error: "Bad file number".
To solve this issue you can open the file build.make of the according library and
split the block (e.g. TKGeomAlgo_OBJECTS) into several smaller ones and modify the
build rule this way that you create first a static library, add the other object
files to the group and then unpack the static archive into one directory. This
trick solves the problem to reduce the whole number of characters.
Afterwards the shared library can be built out of these object files.
Example:
If the build.make file has a line of the form
g++ <options> -shared -o libTKGeomAlgo.dll $(TKGeomAlgo_OBJECTS) <libs>
then change it into
ar rcs win32/libTKGeomAlgo.a $(TKGeomAlgo_OBJECTS1)
ar q win32/libTKGeomAlgo.a $(TKGeomAlgo_OBJECTS2)
...
ar x win32/libTKGeomAlgo.a
g++ <options> -shared -o libTKGeomAlgo.dll *.obj <libs>
rm -f *.obj
Building the FreeCAD sources
----------------------------
In order build the FreeCAD sources either get the developer sources from the SVN repository
or get one of the .tar.gz tarballs and extract it.
Now start cmake-gui.exe from within a MSYS command line window and browse to the FreeCAD
sources and also define the build directory. Now run Configure. It may happen that cmake
complains about some not found libraries. In this case go through the listed libraries and
choose the include directory and/or the path to the library where needed. Once Confgiure
accepts all your input create the Makefiles by clicking on Generate. Now close the window
and enter
make
make install
This will take a couple of minutes. From the command line window change to the FreeCAD bin
folder and start the application with ./FreeCAD. In case it complains about some DLLs it cannot
find you have to extend your PATH environment variable with
export PATH=$PATH:/usr/local/bin:/usr/local/lib
If no grave problems remains repeating ./FreeCAD should start the application now.
Note: In order to let CMake detect the boost libraries you must make sure that the
DLLs are in the system path because the check builds some test applications
and tries to start them. If the DLLs are not in path CMake says that it cannot
find boost. In this case do a export PATH=/usr/local/lib:$PATH
Have fun!

85
README.Win32 Normal file
View File

@@ -0,0 +1,85 @@
How to build and run FreeCAD under Windows
==========================================
Prerequisites
-------------
On Windows we use the IDE MS VisualStudio 9 with the highest service pack.
In case you don't want to use MS products you can also use the MinGW compiler,
alternatively. In this case continue on reading the manual README.MinGW.
You need cMake 2.6 or higher to generate the project files for VisualStudio.
Also you need all the 3rd party libraries to succsefully compile FreeCAD.
Using LibPack
-------------
To make it easier to get FreeCAD compiled, we provide a collection of all
needed libraries. It's called the LibPack. You can find it on the download
page on sourceforge.
Python needed
-------------
During the compilation some Python scripts get executed. So the Python interpreter
has to function on the OS. Use a command box to check it. If the Python library is
not properly installed you will get an error message like Cannot find python.exe.
If you use the LibPack you can also use the python.exe in the bin directory.
Compile
-------
In order to build the FreeCAD sources start the GUI frontend of cmake. If
doesn't already find the header files and libraries of the LibPack you have to
define the path where you have unpacked it.
After you conform to all prerequisites the compilation is - hopefully - only
a mouse click in VC ;-)
After Compiling
---------------
To get FreeCAD up and running from the compiler environment you need to move a
few files from the LibPack to the "bin" folder where FreeCAD.exe is installed
after a successfull build:
* python.exe and python_d.exe from LIBPACK/bin
* python26.dll and python26_d.dll from LIBPACK/bin
* python26.zip from LIBPACK/bin
* make a copy of python26.zip and rename it to python26_d.zip
Additional stuff
----------------
If you want to build the source code documentation you need DoxyGen.
To create an intstaller package you need WIX.
Additional information on building special 3rd party libraries
--------------------------------------------------------------
The addressed audience for this section is rather the developers
themselves than those people who build the FreeCAD sources.
* Salome SMESH
The Salome SMESH library needs some special steps in order to be built
because it contains some Fortran code.
1. First get the SMESH sources smesh-5.1.2.2.tar.gz from the Sourceforge download area
2. Make sure that the IDE can find the boost header files
3. Start compiling all the projects. The NETGENPlugin probably fails but this can simply
be unloaded or removed because we don't need it.
Except of MESFISTO2 all other projects should compile fine. For MEFISTO2 we get a couple
of linker errors.
4. Get the f2c utility from http://netlib.sandia.gov/f2c/mswin/index.html
5. Get f2c.h from http://netlib.sandia.gov/f2c/f2c.h.gz
6. Convert the Fortran file trte.f into a C file trte.c using the f2c utility
7. Get the sources for the lib f2c from http://netlib.sandia.gov/f2c/libf2c.zip.
Unpack the sources and add the compiler switch /MD to makefile.vc. This is needed to
link against the shared C runtime, not the static one.
8. Remove the __WATCOM__ define from the list of the preprocessor macros of the MESFISTO2
project.
9. Build the file vcf2c.lib with "nmake -f makefile.vc" and add it to the MEFISTO2 project as
additional library. The linker errors should now go away.

502
acinclude.m4 Normal file
View File

@@ -0,0 +1,502 @@
dnl @synopsis AC_CXX_HAVE_STL
dnl
dnl If the compiler supports the Standard Template Library, define HAVE_STL.
dnl
dnl @version $Id: acinclude.m4,v 1.2 2006/02/24 00:09:19 wmayer Exp $
dnl @author Luc Maisonobe
dnl
AC_DEFUN([AC_CXX_HAVE_STL],
[AC_CACHE_CHECK(whether the compiler supports Standard Template Library,
ac_cv_cxx_have_stl,
[AC_REQUIRE([AC_CXX_NAMESPACES])
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_TRY_COMPILE([#include <list>
#include <deque>
#ifdef HAVE_NAMESPACES
using namespace std;
#endif],[list<int> x; x.push_back(5);
list<int>::iterator iter = x.begin(); if (iter != x.end()) ++iter; return 0;],
ac_cv_cxx_have_stl=yes, ac_cv_cxx_have_stl=no)
AC_LANG_RESTORE
])
if test "$ac_cv_cxx_have_stl" = yes; then
AC_DEFINE(HAVE_STL,,[define if the compiler supports Standard Template Library])
fi
])
dnl @synopsis AC_CXX_HAVE_STD
dnl
dnl If the compiler supports ISO C++ standard library (i.e., can include the
dnl files iostream, map, iomanip and cmath}), define HAVE_STD.
dnl
dnl @version $Id: acinclude.m4,v 1.2 2006/02/24 00:09:19 wmayer Exp $
dnl @author Luc Maisonobe
dnl
AC_DEFUN([AC_CXX_HAVE_STD],
[AC_CACHE_CHECK(whether the compiler supports ISO C++ standard library,
ac_cv_cxx_have_std,
[AC_REQUIRE([AC_CXX_NAMESPACES])
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_TRY_COMPILE([#include <iostream>
#include <map>
#include <iomanip>
#include <cmath>
#ifdef HAVE_NAMESPACES
using namespace std;
#endif],[return 0;],
ac_cv_cxx_have_std=yes, ac_cv_cxx_have_std=no)
AC_LANG_RESTORE
])
if test "$ac_cv_cxx_have_std" = yes; then
AC_DEFINE(HAVE_STD,,[define if the compiler supports ISO C++ standard library])
fi
])
dnl @synopsis AC_CXX_NAMESPACES
dnl
dnl If the compiler can prevent names clashes using namespaces, define
dnl HAVE_NAMESPACES.
dnl
dnl @version $Id: acinclude.m4,v 1.2 2006/02/24 00:09:19 wmayer Exp $
dnl @author Luc Maisonobe
dnl
AC_DEFUN([AC_CXX_NAMESPACES],
[AC_CACHE_CHECK(whether the compiler implements namespaces,
ac_cv_cxx_namespaces,
[AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_TRY_COMPILE([namespace Outer { namespace Inner { int i = 0; }}],
[using namespace Outer::Inner; return i;],
ac_cv_cxx_namespaces=yes, ac_cv_cxx_namespaces=no)
AC_LANG_RESTORE
])
if test "$ac_cv_cxx_namespaces" = yes; then
AC_DEFINE(HAVE_NAMESPACES,,[define if the compiler implements namespaces])
fi
])
dnl @synopsis AC_CXX_HAVE_SSTREAM
dnl
dnl If sstream (part of Standard C++ Library) exists
dnl define HAVE_SSTREAM.
dnl
dnl @version ac_cxx_have_std.m4 Tue Mar 28 18:20:26 CEST 2000
dnl @author Thomas Sondergaard thomass@deltadata.dk
dnl
AC_DEFUN([AC_CXX_HAVE_SSTREAM],
[AC_CACHE_CHECK(for sstream,
ac_cv_cxx_have_sstream,
[AC_REQUIRE([AC_CXX_NAMESPACES])
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_TRY_COMPILE([#include <sstream>
#ifdef HAVE_NAMESPACES
using namespace std;
#endif],[return 0;],
ac_cv_cxx_have_sstream=yes, ac_cv_cxx_have_sstream=no)
AC_LANG_RESTORE
])
if test "$ac_cv_cxx_have_sstream" = yes; then
AC_DEFINE(HAVE_SSTREAM,1,[define if the compiler supports sstream])
fi
])
dnl @synopsis AC_CXX_HAVE_STD_IOSTREAM
dnl
dnl If std iostream (part of Standard C++ Library) exists
dnl define HAVE_STD_IOSTREAM.
dnl
dnl @version ac_cxx_have_std.m4 Tue Mar 28 18:20:26 CEST 2000
dnl @author Thomas Sondergaard thomass@deltadata.dk
dnl
AC_DEFUN([AC_CXX_HAVE_STD_IOSTREAM],
[AC_CACHE_CHECK(for std iostream,
ac_cv_cxx_have_std_iostream,
[AC_REQUIRE([AC_CXX_NAMESPACES])
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_TRY_COMPILE([
#include <sstream>
#include <streambuf>
#include <ios>
#ifdef HAVE_NAMESPACES
using namespace std;
#endif
],[return 0;],
ac_cv_cxx_have_std_iostream=yes, ac_cv_cxx_have_std_iostream=no)
AC_LANG_RESTORE
])
if test "$ac_cv_cxx_have_std_iostream" = yes; then
AC_DEFINE(HAVE_STD_IOSTREAM,,[define if the compiler has std compliant iostream library])
fi
])
dnl @synopsis FREECAD_AC_HAVE_QT(MINIMUM_VERSION)
dnl
dnl @summary Search for Trolltech's Qt GUI framework.
dnl
dnl Checks for the Qt4 library and its tools uic, moc and rcc.
dnl
dnl The following variables are exported:
dnl
dnl QT_DIR
dnl QT_CXXFLAGS
dnl QT_LIBS
dnl QT_MOC
dnl QT_UIC
dnl QT_RCC
dnl
AC_DEFUN([FREECAD_AC_HAVE_QT],
[
AC_ARG_WITH([qt4-dir],
AC_HELP_STRING([--with-qt4-dir=DIR], [give prefix location of Qt4]),
[fc_qt4_dir="$withval"],
[fc_qt4_dir="/usr/share/qt4"])
AC_ARG_WITH([qt4-include],
AC_HELP_STRING([--with-qt4-include=DIR], [give include prefix of Qt4]),
[fc_qt4_include="$withval"],
[fc_qt4_include="$fc_qt4_dir/include"])
AC_ARG_WITH([qt4-lib],
AC_HELP_STRING([--with-qt4-lib=DIR], [give library path to Qt4]),
[fc_qt4_lib="$withval"],
[fc_qt4_lib="$fc_qt4_dir/lib"])
AC_ARG_WITH([qt4-bin],
AC_HELP_STRING([--with-qt4-bin=DIR], [give path to Qt4 utilities (moc, uic, rcc)]),
[fc_qt4_bin="$withval"],
[fc_qt4_bin="$fc_qt4_dir/bin"])
AC_ARG_WITH([qt4-framework],
AC_HELP_STRING([--with-qt4-framework],
[give prefix path to the Qt4 framework on Mac OS X]),
[fc_qt4_frm="$withval"],
[fc_qt4_frm=""])
AC_MSG_CHECKING(for host)
AC_MSG_RESULT($host_os)
case $host_os in
mingw32*)
fc_qt4_lib_core="-L$fc_qt4_lib -lQtCore"
QT_LIBS="-L$fc_qt4_lib -lopengl32 -lglu32 -lgdi32 -luser32 -lmingw32 -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-s -Wl,-subsystem,windows"
QT_CXXFLAGS="-I$fc_qt4_include -I$fc_qt4_include/QtCore -I$fc_qt4_include/QtGui -I$fc_qt4_include/QtOpenGL -I$fc_qt4_include/QtSvg -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -frtti -fexceptions"
;;
darwin*)
AC_PATH_XTRA
if test -d $fc_qt4_frm/QtCore.framework; then
ac_save_ldflags_fw=$LDFLAGS
LDFLAGS="$LDFLAGS -F$fc_qt4_frm -framework QtCore"
AC_CACHE_CHECK(
[whether Qt is installed as framework],
ac_cv_have_qt_framework,
[AC_TRY_LINK([#include <QtCore/qglobal.h>
#include <stdio.h>],
[printf("%s\n", qVersion());],
[ac_cv_have_qt_framework=yes],
[ac_cv_have_qt_framework=no])
])
LDFLAGS=$ac_save_ldflags_fw
else
ac_cv_have_qt_framework=no
fi
if test "$ac_cv_have_qt_framework" = yes; then
# Qt as framework installed
fc_qt4_lib_core="-Wl,-F$fc_qt4_frm -Wl,-framework,QtCore"
QT_LIBS="-Wl,-F$fc_qt4_frm"
#QT_LIBS="$QT_LIBS -Wl,-framework,Qt3Support"
QT_LIBS="$QT_LIBS -Wl,-framework,QtGui"
QT_LIBS="$QT_LIBS -Wl,-framework,QtOpenGL"
QT_LIBS="$QT_LIBS -Wl,-framework,QtCore"
QT_LIBS="$QT_LIBS -Wl,-framework,QtNetwork"
QT_LIBS="$QT_LIBS -Wl,-framework,QtXml"
QT_LIBS="$QT_LIBS -Wl,-framework,QtSql"
QT_LIBS="$QT_LIBS -Wl,-framework,QtSvg"
# Separated libs
QT4_CORE_LIBS="-Wl,-F$fc_qt4_frm -Wl,-framework,QtCore"
QT_CXXFLAGS="-F$fc_qt4_frm -I$fc_qt4_frm/Qt3Support.framework/Headers"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtGui.framework/Headers"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtCore.framework/Headers"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtOpenGL.framework/Headers"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtNetwork.framework/Headers"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtSvg.framework/Headers"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtXml.framework/Headers"
# Separated flags
QT4_CORE_CXXFLAGS="-F$fc_qt4_frm -I$fc_qt4_frm/QtCore.framework/Headers"
# QtUiTools doesn't seem to be available as framework
QT_CXXFLAGS="$QT_CXXFLAGS -I/usr/include/QtUiTools"
# QtWebKit check
fc_ac_save_cppflags=$CPPFLAGS
CPPFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtWebKit.framework/Headers"
AC_MSG_CHECKING([whether QtWebKit is available])
AC_TRY_COMPILE([#include <QWebView>], [],
[
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_frm/QtWebKit.framework/Headers"
QT_LIBS="$QT_LIBS -Wl,-framework,QtWebKit"
AC_MSG_RESULT(yes)],
AC_MSG_RESULT(no))
CPPFLAGS=$fc_ac_save_cppflags
else
# Qt not as framework installed
fc_qt4_lib_core="-L$fc_qt4_lib -lQtCore"
QT_LIBS="-L$fc_qt4_lib -lQtCore -lQtGui -lQt3Support -lQtNetwork -lQtOpenGL -lQtSvg -lQtXml"
QT_CXXFLAGS="-I$fc_qt4_include -I$fc_qt4_include/Qt3Support"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtGui"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtCore"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtOpenGL"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtNetwork"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtSvg"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtXml"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtUiTools"
# Separated flags and libs
QT4_CORE_CXXFLAGS="-I$fc_qt4_include -I$fc_qt4_include/QtCore"
QT4_CORE_LIBS="-L$fc_qt4_lib -lQtCore"
# QtWebKit check
fc_ac_save_cppflags=$CPPFLAGS
CPPFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtWebKit"
AC_MSG_CHECKING([whether QtWebKit is available])
AC_TRY_COMPILE([#include <QWebView>], [],
[
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtWebKit"
QT_LIBS="$QT_LIBS -lQtWebKit"
AC_MSG_RESULT(yes)],
AC_MSG_RESULT(no))
CPPFLAGS=$fc_ac_save_cppflags
fi
;;
*) # UNIX/Linux based
AC_PATH_XTRA
fc_qt4_lib_core="-L$fc_qt4_lib -lQtCore"
QT_LIBS="-L$fc_qt4_lib -lQtCore -lQtGui -lQt3Support -lQtNetwork -lQtOpenGL -lQtSvg -lQtXml $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
QT_CXXFLAGS="-I$fc_qt4_include -I$fc_qt4_include/Qt3Support"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtGui"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtCore"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtOpenGL"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtNetwork"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtSvg"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtXml"
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtUiTools $X_CFLAGS"
# QtWebKit check
fc_ac_save_cppflags=$CPPFLAGS
CPPFLAGS="-I$fc_qt4_include -I$fc_qt4_include/QtWebKit"
AC_MSG_CHECKING([whether QtWebKit is available])
AC_TRY_LINK([#include <QWebView>], [],
[
QT_CXXFLAGS="$QT_CXXFLAGS -I$fc_qt4_include/QtWebKit"
QT_LIBS="$QT_LIBS -lQtWebKit"
AC_MSG_RESULT(yes)],
AC_MSG_RESULT(no))
CPPFLAGS=$fc_ac_save_cppflags
#QT4_CXXFLAGS="-I$fc_qt4_include"
#QT4_LIBS="-L$fc_qt4_lib $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
# Separated flags and libs
QT4_CORE_CXXFLAGS="-I$fc_qt4_include -I$fc_qt4_include/QtCore"
QT4_CORE_LIBS="-L$fc_qt4_lib -lQtCore"
#QT4_GUI_CXXFLAGS="-I$fc_qt4_include/QtGui"
#QT4_GUI_LIBS="-lQtGui"
#QT4_NETWORK_CFLAGS="-I$fc_qt4_include/QtNetwork"
#QT4_NETWORK_LIBS="-lQtNetwork"
#QT4_XML_CFLAGS="-I$fc_qt4_include/QtXml"
#QT4_XML_LIBS="-lQtXml"
;;
esac
min_qt_version=ifelse([$1], ,4.0.0, $1)
AC_MSG_CHECKING(for Qt >= $min_qt_version)
QT_MOC="$fc_qt4_bin/moc"
QT_UIC="$fc_qt4_bin/uic"
QT_RCC="$fc_qt4_bin/rcc"
# Now we check whether we can actually build a Qt app.
cat > myqt.h << EOF
#include <QObject>
class Test : public QObject
{
Q_OBJECT
public:
Test() {}
~Test() {}
public slots:
void receive() {}
signals:
void send();
};
EOF
cat > myqt.cpp << EOF
#include "myqt.h"
#include <QCoreApplication>
#include <QByteArray>
#include <QGlobalStatic>
#include <QStringList>
#include <stdio.h>
#include <stdlib.h>
int main( int argc, char **argv )
{
QCoreApplication app( argc, argv );
Test t;
QObject::connect( &t, SIGNAL(send()), &t, SLOT(receive()) );
// major, minor, patch
QString version = "$min_qt_version";
QStringList numbers = version.split('.');
int shift[[3]] = {16,8,0};
int minversion = 0, i = 0;
for (QStringList::ConstIterator it = numbers.begin(); it != numbers.end(); ++it, ++i) {
bool ok;
int val = (*it).toInt(&ok);
if (ok) {
minversion = minversion + (val << shift[[i]]);
}
}
exit(QT_VERSION < minversion);
}
EOF
bnv_try_1="$QT_MOC myqt.h -o moc_myqt.cpp"
AC_TRY_EVAL(bnv_try_1)
if test x"$ac_status" != x0; then
AC_MSG_ERROR([Cannot find Qt meta object compiler (moc), bye...])
fi
bnv_try_2="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o moc_myqt.o moc_myqt.cpp"
AC_TRY_EVAL(bnv_try_2)
if test x"$ac_status" != x0; then
AC_MSG_ERROR([Failed to compile source file created by Qt meta object compiler (moc), bye...])
fi
bnv_try_3="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o myqt.o myqt.cpp"
AC_TRY_EVAL(bnv_try_3)
if test x"$ac_status" != x0; then
AC_MSG_ERROR([Failed to compile Qt test app, bye...])
fi
# Make sure not to link against X11 libs so that configure succeeds whithout xserver started
bnv_try_4="$CXX myqt.o moc_myqt.o $fc_qt4_lib_core $LIBS -o myqt"
AC_TRY_EVAL(bnv_try_4)
if test x"$ac_status" != x0; then
AC_MSG_ERROR([Failed to link with Qt, bye...])
fi
AS_IF([AM_RUN_LOG([./myqt])],
[AC_MSG_RESULT(yes)],
[AC_MSG_ERROR([Version of Qt4 found but < $min_qt_version])
])
rm -f moc_myqt.cpp myqt.h myqt.cpp myqt.o myqt moc_myqt.o
if test -d $fc_qt4_dir; then
QT_DIR="$fc_qt4_dir"
else
QT_DIR=""
fi
AC_SUBST(QT_DIR)
AC_SUBST(QT_CXXFLAGS)
AC_SUBST(QT_LIBS)
AC_SUBST(QT4_CORE_CXXFLAGS)
AC_SUBST(QT4_CORE_LIBS)
AC_SUBST(QT_UIC)
AC_SUBST(QT_MOC)
AC_SUBST(QT_RCC)
])
dnl @synopsis FREECAD_AC_HAVE_BOOST
dnl
dnl @summary Search for boost header and library files.
dnl
dnl
AC_DEFUN([FREECAD_AC_HAVE_BOOST],
[
AC_MSG_CHECKING(for boost)
AC_ARG_WITH(boost-include,
AC_HELP_STRING([--with-boost-include=DIR], [Path to the boost header files]),
[fc_boost_incs=$withval], [fc_boost_incs=/usr/include])
AC_ARG_WITH(boost-lib,
AC_HELP_STRING([--with-boost-lib=DIR], [Path to the boost library files]),
[fc_boost_libs=$withval], [fc_boost_libs=/usr/lib])
fc_boost_ac_save_cppflags=$CPPFLAGS
fc_boost_ac_save_ldflags=$LDFLAGS
fc_boost_ac_save_libs=$LIBS
CPPFLAGS="$CPPFLAGS -I$fc_boost_incs"
LDFLAGS="$LDFLAGS -L$fc_boost_libs"
LIBS="-lboost_program_options-mt"
AC_TRY_LINK([#include <boost/program_options.hpp>],
[namespace po = boost::program_options;
po::options_description generic("Generic options");
generic.add_options()
("version,v", "print version string")
("help", "produce help message");
],
[AC_MSG_RESULT(yes)],
[AC_MSG_ERROR(failed)])
AC_MSG_CHECKING(for boost >= 1.35.0)
cat > boost.cpp << EOF
#include <boost/version.hpp>
#include <cstdio>
#include <cstdlib>
int main(int argc, char **argv)
{
exit(BOOST_VERSION >= 103500);
}
EOF
# Depending on boost version decide if boost_system is required
boost_try="$CXX boost.cpp $CPPFLAGS -o boost"
AC_TRY_EVAL(boost_try)
if test x"$ac_status" != x0; then
AC_MSG_ERROR([Failed to get version of boost, bye...])
fi
AS_IF([AM_RUN_LOG([./boost])],
[ac_cv_boost_system=no],
[ac_cv_boost_system=yes
])
AC_MSG_RESULT($ac_cv_boost_system)
rm -f boost.cpp boost
BOOST_FILESYSTEM_LIB="-lboost_filesystem-mt"
BOOST_PROGOPTIONS_LIB="-lboost_program_options-mt"
BOOST_SIGNALS_LIB="-lboost_signals-mt"
BOOST_SYSTEM_LIB=""
BOOST_REGEX_LIB="-lboost_regex-mt"
if test x"$ac_cv_boost_system" = xyes; then
LIBS="-lboost_system-mt"
AC_MSG_CHECKING(for boost system library)
AC_TRY_LINK([#include <boost/system/error_code.hpp>],
[ boost::system::error_code error_code; std::string message(error_code.message()); return 0; ],
[BOOST_SYSTEM_LIB="-lboost_system-mt"],
[BOOST_SYSTEM_LIB=""])
if test "x$BOOST_SYSTEM_LIB" = "x"; then
AC_MSG_RESULT(no)
AC_MSG_ERROR(Unable to link with the boost::system library)
else
AC_MSG_RESULT(yes)
fi
fi
AC_SUBST(BOOST_FILESYSTEM_LIB)
AC_SUBST(BOOST_PROGOPTIONS_LIB)
AC_SUBST(BOOST_SIGNALS_LIB)
AC_SUBST(BOOST_SYSTEM_LIB)
AC_SUBST(BOOST_REGEX_LIB)
CPPFLAGS=$fc_boost_ac_save_cppflags
LDFLAGS=$fc_boost_ac_save_ldflags
LIBS=$fc_boost_ac_save_libs
all_includes="$all_includes -I$fc_boost_incs"
all_libraries="$all_libraries -L$fc_boost_libs"
])

64
autogen.sh Executable file
View File

@@ -0,0 +1,64 @@
#!/bin/bash
# autogen.sh
# Run this script to generate all initial makefiles.
# Get version and revision number
MAJ=0
MIN=12
REV=0
if svn --xml info >/dev/null 2>&1; then
REV=`svn --xml info | tr -d '\r\n' | sed -e 's/.*<commit.*revision="\([0-9]*\)".*<\/commit>.*/\1/'`
elif svn --version --quiet >/dev/null 2>&1; then
REV=`svn info | grep "^Revision:" | cut -d" " -f2`
fi
# if revision.m4 does not exist, create it
REV_FILE=revision.m4
if [ -f $REV_FILE ]; then
echo "$REV_FILE found"
else
echo "m4_define([FREECAD_MAJOR], $MAJ)" > $REV_FILE
echo "m4_define([FREECAD_MINOR], $MIN)" >> $REV_FILE
echo "m4_define([FREECAD_MICRO], $REV)" >> $REV_FILE
echo "$REV_FILE created"
fi
# create m4 subdirectory which fails for some older versions of autotools
[ -d m4 ] || mkdir m4
if which glibtoolize > /dev/null 2>&1; then
echo "calling glibtoolize"
glibtoolize --force --copy
elif which libtoolize > /dev/null 2>71; then
echo "calling libtoolize"
libtoolize --force --copy
else
echo "can't find libtoolize or glibtoolize"
exit 1
fi
# http://www.gnu.org/software/hello/manual/automake/Macro-Search-Path.html
if [ -d /usr/local/share/aclocal ]; then
echo "calling aclocal -I /usr/local/share/aclocal"
aclocal -I /usr/local/share/aclocal
else
echo "calling aclocal"
aclocal
fi
echo "calling autoheader"
autoheader
echo "calling automake"
automake --add-missing --copy
echo "calling autoconf"
autoconf
echo "Done"
echo "Please run configure."
# touch file to update Version.h
touch src/Build/Version.h.in

8
build.sh Executable file
View File

@@ -0,0 +1,8 @@
#! /bin/sh
# We almost need to specify the switches for the OpenCascade library to make
# configure running successfully.
# CASROOT=${CASROOT:-/opt/OpenCASCADE6.2.0/ros}
#./configure CXXFLAGS="-fno-strict-aliasing" LDFLAGS="-Wl,-z,defs" --with-occ-include=$CASROOT/inc --with-occ-lib=$CASROOT/Linux/lib
./configure CXXFLAGS="-fno-strict-aliasing -Wno-write-strings" LDFLAGS="-Wl,-z,defs"

View File

@@ -0,0 +1,65 @@
include(CheckIncludeFile)
include(CheckIncludeFiles)
include(CheckSymbolExists)
include(CheckFunctionExists)
include(CheckLibraryExists)
include(CheckTypeSize)
include(CheckCSourceCompiles)
include(CheckIncludeFileCXX)
include(CheckCXXSourceCompiles)
#check_include_file(dlfcn.h HAVE_DLFCN_H)
check_include_file(GL/gl.h HAVE_GL_GL_H)
#check_include_file(iomanip.h HAVE_IOMANIP_H)
#check_include_file(limits.h HAVE_LIMITS_H)
#check_include_file(values.h HAVE_VALUES_H)
#check_include_file(float.h HAVE_FLOAT_H)
#check_include_file(inttypes.h HAVE_INTTYPES_H)
#check_include_file(libc.h HAVE_LIBC_H)
#check_include_file(memory.h HAVE_MEMORY_H)
#check_include_file(stdint.h HAVE_STDINT_H)
#check_include_file(stdlib.h HAVE_STDLIB_H)
#check_include_file(unistd.h HAVE_UNISTD_H)
#check_include_file(strings.h HAVE_STRINGS_H)
#check_include_file(string.h HAVE_STRING_H)
#check_include_file(bstring.h HAVE_BSTRING_H)
#check_include_file(siginfo.h HAVE_SIGINFO_H)
#check_include_file(bits/sigset.h HAVE_BITS_SIGSET_H)
#check_include_file(sys/dir.h HAVE_SYS_DIR_H)
#check_include_file(sys/filio.h HAVE_SYS_FILIO_H)
#check_include_file(sys/mman.h HAVE_SYS_MMAN_H)
#check_include_file(sys/select.h HAVE_SYS_SELECT_H)
#check_include_file(sys/stat.h HAVE_SYS_STAT_H)
#check_include_file(sys/types.h HAVE_SYS_TYPES_H)
# i/o streams
check_include_file_cxx(istream HAVE_ISTREAM)
check_include_file_cxx(ostream HAVE_OSTREAM)
check_include_file_cxx(fstream HAVE_FSTREAM)
check_include_file_cxx(sstream HAVE_SSTREAM)
check_include_file_cxx(ios HAVE_IOS)
check_include_file_cxx(iostream HAVE_IOSTREAM)
check_include_file_cxx(iomanip HAVE_IOMANIP)
include(TestForANSIStreamHeaders)
IF(NOT CMAKE_NO_ANSI_STREAM_HEADERS)
SET(HAVE_STD_IOSTREAM 1)
SET(USE_STD_IOSTREAM 1)
ENDIF(NOT CMAKE_NO_ANSI_STREAM_HEADERS)
include(TestForSTDNamespace)
IF(NOT CMAKE_NO_ANSI_STRING_STREAM)
SET(HAVE_NAMESPACES 1)
ENDIF(NOT CMAKE_NO_ANSI_STRING_STREAM)
SET(HAVE_QGLFORMAT_EQ_OP 1)
SET(HAVE_QGLFORMAT_SETOVERLAY 1)
SET(HAVE_QGLWIDGET_SETAUTOBUFFERSWAP 1)
SET(HAVE_QT_KEYPAD_DEFINE 1)
SET(HAVE_QWIDGET_SHOWFULLSCREEN 1)

90
cMake/FindCoin3D.cmake Normal file
View File

@@ -0,0 +1,90 @@
# Try to find Coin3D
# Once done this will define
#
# COIN3D_FOUND - system has Coin3D - Open Inventor
# COIN3D_INCLUDE_DIR - where the Inventor include directory can be found
# COIN3D_LIBRARY - Link this to use Coin3D
#
IF (WIN32)
IF (CYGWIN)
FIND_PATH(COIN3D_INCLUDE_DIR Inventor/So.h
/usr/include
/usr/local/include
)
FIND_LIBRARY(COIN3D_LIBRARY Coin
/usr/lib
/usr/local/lib
)
ELSE (CYGWIN)
FIND_PATH(COIN3D_INCLUDE_DIR Inventor/So.h
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\Coin3D\\2;Installation Path]/include"
)
FIND_LIBRARY(COIN3D_LIBRARY_DEBUG coin2d
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\Coin3D\\2;Installation Path]/lib"
)
FIND_LIBRARY(COIN3D_LIBRARY_RELEASE coin2
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\Coin3D\\2;Installation Path]/lib"
)
IF (COIN3D_LIBRARY_DEBUG AND COIN3D_LIBRARY_RELEASE)
SET(COIN3D_LIBRARY optimized ${COIN3D_LIBRARY_RELEASE}
debug ${COIN3D_LIBRARY_DEBUG})
ELSE (COIN3D_LIBRARY_DEBUG AND COIN3D_LIBRARY_RELEASE)
IF (COIN3D_LIBRARY_DEBUG)
SET (COIN3D_LIBRARY ${COIN3D_LIBRARY_DEBUG})
ENDIF (COIN3D_LIBRARY_DEBUG)
IF (COIN3D_LIBRARY_RELEASE)
SET (COIN3D_LIBRARY ${COIN3D_LIBRARY_RELEASE})
ENDIF (COIN3D_LIBRARY_RELEASE)
ENDIF (COIN3D_LIBRARY_DEBUG AND COIN3D_LIBRARY_RELEASE)
IF (COIN3D_LIBRARY)
# ADD_DEFINITIONS ( -DCOIN_NOT_DLL )
#ELSE (COIN3D_LIBRARY)
# SET (COIN3D_LIBRARY coin2d CACHE STRING "Coin3D Library (Debug) - Open Inventor API")
ENDIF (COIN3D_LIBRARY)
ENDIF (CYGWIN)
ELSE (WIN32)
IF(APPLE)
FIND_PATH(COIN3D_INCLUDE_DIR Inventor/So.h
/Library/Frameworks/Inventor.framework/Headers
/usr/local/include
/usr/include
)
FIND_LIBRARY(COIN3D_LIBRARY Coin
/Library/Frameworks/Inventor.framework/Libraries
/usr/lib
/usr/local/lib
)
SET(COIN3D_LIBRARY "-framework Coin3d" CACHE STRING "Coin3D library for OSX")
ELSE(APPLE)
FIND_PATH(COIN3D_INCLUDE_DIR Inventor/So.h
/usr/include
/usr/local/include
)
FIND_LIBRARY(COIN3D_LIBRARY Coin
/usr/lib
/usr/local/lib
)
ENDIF(APPLE)
ENDIF (WIN32)
SET( COIN3D_FOUND "NO" )
IF(COIN3D_LIBRARY)
SET( COIN3D_FOUND "YES" )
ENDIF(COIN3D_LIBRARY)

87
cMake/FindCoin3DDoc.cmake Normal file
View File

@@ -0,0 +1,87 @@
# Try to find Coin3D Doc
# If found, this will define
#
# COIN3D_DOC_FOUND - we have access to Coin3D doc, either locally
# or on the net
# COIN3D_DOC_TAGFILE - full name of the tag file
# COIN3D_DOC_PATH - path to html Coin3D doc
SET( COIN3D_DOC_FOUND "NO" )
IF (COIN3D_FOUND)
IF (WIN32)
IF (CYGWIN)
# Not yet implemented
ELSE (CYGWIN)
# Not yet implemented
ENDIF (CYGWIN)
ELSE (WIN32)
IF(APPLE)
# Not yet implemented
ELSE(APPLE)
# Unix systems
find_path(COIN3D_DOC_PATH index.html
/usr/share/doc/libcoin60-doc/html
)
IF( EXISTS ${COIN3D_DOC_PATH})
message(STATUS "Coin3D doc is installed")
find_file(COIN3D_DOC_TAGFILE coin.tag
${COIN3D_DOC_PATH}
)
IF( EXISTS ${COIN3D_DOC_TAGFILE})
SET( COIN3D_DOC_FOUND "YES"
)
ELSE( EXISTS ${COIN3D_DOC_TAGFILE})
find_file(COIN3D_DOC_TAGFILE_GZ coin.tag.gz
${COIN3D_DOC_PATH}
)
IF( EXISTS ${COIN3D_DOC_TAGFILE_GZ})
message(STATUS " Found ${COIN3D_DOC_TAGFILE_GZ}")
message(STATUS " You should uncompress this file if you want to use it for source doc generation")
ENDIF( EXISTS ${COIN3D_DOC_TAGFILE_GZ})
ENDIF( EXISTS ${COIN3D_DOC_TAGFILE})
ELSE( EXISTS ${COIN3D_DOC_PATH})
#fallback: tries to use online coin doc
message(STATUS "Coin3D doc is not installed")
SET(COIN3D_DOC_PATH
http://doc.coin3d.org/Coin
)
find_file(COIN3D_DOC_TAGFILE coin.tag
${CMAKE_BINARY_DIR}/src/Doc
)
IF( EXISTS ${COIN3D_DOC_TAGFILE})
SET( COIN3D_DOC_FOUND "YES"
)
ELSE( EXISTS ${COIN3D_DOC_TAGFILE})
find_program(WGET_PROG wget
)
IF( EXISTS ${WGET_PROG})
execute_process(COMMAND ${WGET_PROG}
-P ${CMAKE_BINARY_DIR}/src/Doc
${COIN3D_DOC_PATH}/coin.tag
)
find_file(COIN3D_DOC_TAGFILE coin.tag
${CMAKE_BINARY_DIR}/src/Doc
)
IF( EXISTS ${COIN3D_DOC_TAGFILE})
SET( COIN3D_DOC_FOUND "YES"
)
ENDIF( EXISTS ${COIN3D_DOC_TAGFILE})
ENDIF( EXISTS ${WGET_PROG})
ENDIF( EXISTS ${COIN3D_DOC_TAGFILE})
ENDIF( EXISTS ${COIN3D_DOC_PATH})
ENDIF(APPLE)
ENDIF(WIN32)
ENDIF(COIN3D_FOUND)
if(COIN3D_DOC_FOUND)
message(STATUS " Tag file: ${COIN3D_DOC_TAGFILE}")
message(STATUS " Location: ${COIN3D_DOC_PATH}")
endif(COIN3D_DOC_FOUND)

76
cMake/FindEigen2.cmake Normal file
View File

@@ -0,0 +1,76 @@
# - Try to find Eigen2 lib
# Once done this will define
#
# EIGEN2_FOUND - system has eigen lib with correct version
# EIGEN2_INCLUDE_DIR - the eigen include directory
# EIGEN2_VERSION - eigen version
# Copyright (c) 2006, 2007 Montel Laurent, <montel@kde.org>
# Copyright (c) 2008, 2009 Gael Guennebaud, <g.gael@free.fr>
# Redistribution and use is allowed according to the terms of the BSD license.
if(NOT EIGEN2_MIN_VERSION)
if(NOT Eigen2_FIND_VERSION_MAJOR)
set(Eigen2_FIND_VERSION_MAJOR 2)
endif(NOT Eigen2_FIND_VERSION_MAJOR)
if(NOT Eigen2_FIND_VERSION_MINOR)
set(Eigen2_FIND_VERSION_MINOR 0)
endif(NOT Eigen2_FIND_VERSION_MINOR)
if(NOT Eigen2_FIND_VERSION_PATCH)
set(Eigen2_FIND_VERSION_PATCH 0)
endif(NOT Eigen2_FIND_VERSION_PATCH)
set(EIGEN2_MIN_VERSION "${Eigen2_FIND_VERSION_MAJOR}.${Eigen2_FIND_VERSION_MINOR}.${Eigen2_FIND_VERSION_PATCH}")
endif(NOT EIGEN2_MIN_VERSION)
macro(_eigen2_check_version)
file(READ "${EIGEN2_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen2_version_header LIMIT 5000 OFFSET 1000)
string(REGEX MATCH "define *EIGEN_WORLD_VERSION ([0-9]*)" _eigen2_world_version_match "${_eigen2_version_header}")
set(EIGEN2_WORLD_VERSION "${CMAKE_MATCH_1}")
string(REGEX MATCH "define *EIGEN_MAJOR_VERSION ([0-9]*)" _eigen2_major_version_match "${_eigen2_version_header}")
set(EIGEN2_MAJOR_VERSION "${CMAKE_MATCH_1}")
string(REGEX MATCH "define *EIGEN_MINOR_VERSION ([0-9]*)" _eigen2_minor_version_match "${_eigen2_version_header}")
set(EIGEN2_MINOR_VERSION "${CMAKE_MATCH_1}")
set(EIGEN2_VERSION ${EIGEN2_WORLD_VERSION}.${EIGEN2_MAJOR_VERSION}.${EIGEN2_MINOR_VERSION})
if(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION})
set(EIGEN2_VERSION_OK FALSE)
else(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION})
set(EIGEN2_VERSION_OK TRUE)
endif(${EIGEN2_VERSION} VERSION_LESS ${EIGEN2_MIN_VERSION})
if(NOT EIGEN2_VERSION_OK)
message(STATUS "Eigen2 version ${EIGEN2_VERSION} found in ${EIGEN2_INCLUDE_DIR}, "
"but at least version ${EIGEN2_MIN_VERSION} is required")
endif(NOT EIGEN2_VERSION_OK)
endmacro(_eigen2_check_version)
if (EIGEN2_INCLUDE_DIR)
# in cache already
_eigen2_check_version()
set(EIGEN2_FOUND ${EIGEN2_VERSION_OK})
else (EIGEN2_INCLUDE_DIR)
find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core
PATHS
${INCLUDE_INSTALL_DIR}
${KDE4_INCLUDE_DIR}
PATH_SUFFIXES eigen2
)
if(EIGEN2_INCLUDE_DIR)
_eigen2_check_version()
endif(EIGEN2_INCLUDE_DIR)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Eigen2 DEFAULT_MSG EIGEN2_INCLUDE_DIR EIGEN2_VERSION_OK)
mark_as_advanced(EIGEN2_INCLUDE_DIR)
endif(EIGEN2_INCLUDE_DIR)

81
cMake/FindEigen3.cmake Normal file
View File

@@ -0,0 +1,81 @@
# - Try to find Eigen3 lib
#
# This module supports requiring a minimum version, e.g. you can do
# find_package(Eigen3 3.1.2)
# to require version 3.1.2 or newer of Eigen3.
#
# Once done this will define
#
# EIGEN3_FOUND - system has eigen lib with correct version
# EIGEN3_INCLUDE_DIR - the eigen include directory
# EIGEN3_VERSION - eigen version
# Copyright (c) 2006, 2007 Montel Laurent, <montel@kde.org>
# Copyright (c) 2008, 2009 Gael Guennebaud, <g.gael@free.fr>
# Copyright (c) 2009 Benoit Jacob <jacob.benoit.1@gmail.com>
# Redistribution and use is allowed according to the terms of the 2-clause BSD license.
if(NOT Eigen3_FIND_VERSION)
if(NOT Eigen3_FIND_VERSION_MAJOR)
set(Eigen3_FIND_VERSION_MAJOR 2)
endif(NOT Eigen3_FIND_VERSION_MAJOR)
if(NOT Eigen3_FIND_VERSION_MINOR)
set(Eigen3_FIND_VERSION_MINOR 91)
endif(NOT Eigen3_FIND_VERSION_MINOR)
if(NOT Eigen3_FIND_VERSION_PATCH)
set(Eigen3_FIND_VERSION_PATCH 0)
endif(NOT Eigen3_FIND_VERSION_PATCH)
set(Eigen3_FIND_VERSION "${Eigen3_FIND_VERSION_MAJOR}.${Eigen3_FIND_VERSION_MINOR}.${Eigen3_FIND_VERSION_PATCH}")
endif(NOT Eigen3_FIND_VERSION)
macro(_eigen3_check_version)
file(READ "${EIGEN3_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen3_version_header)
string(REGEX MATCH "define[ \t]+EIGEN_WORLD_VERSION[ \t]+([0-9]+)" _eigen3_world_version_match "${_eigen3_version_header}")
set(EIGEN3_WORLD_VERSION "${CMAKE_MATCH_1}")
string(REGEX MATCH "define[ \t]+EIGEN_MAJOR_VERSION[ \t]+([0-9]+)" _eigen3_major_version_match "${_eigen3_version_header}")
set(EIGEN3_MAJOR_VERSION "${CMAKE_MATCH_1}")
string(REGEX MATCH "define[ \t]+EIGEN_MINOR_VERSION[ \t]+([0-9]+)" _eigen3_minor_version_match "${_eigen3_version_header}")
set(EIGEN3_MINOR_VERSION "${CMAKE_MATCH_1}")
set(EIGEN3_VERSION ${EIGEN3_WORLD_VERSION}.${EIGEN3_MAJOR_VERSION}.${EIGEN3_MINOR_VERSION})
if(${EIGEN3_VERSION} VERSION_LESS ${Eigen3_FIND_VERSION})
set(EIGEN3_VERSION_OK FALSE)
else(${EIGEN3_VERSION} VERSION_LESS ${Eigen3_FIND_VERSION})
set(EIGEN3_VERSION_OK TRUE)
endif(${EIGEN3_VERSION} VERSION_LESS ${Eigen3_FIND_VERSION})
if(NOT EIGEN3_VERSION_OK)
message(STATUS "Eigen3 version ${EIGEN3_VERSION} found in ${EIGEN3_INCLUDE_DIR}, "
"but at least version ${Eigen3_FIND_VERSION} is required")
endif(NOT EIGEN3_VERSION_OK)
endmacro(_eigen3_check_version)
if (EIGEN3_INCLUDE_DIR)
# in cache already
_eigen3_check_version()
set(EIGEN3_FOUND ${EIGEN3_VERSION_OK})
else (EIGEN3_INCLUDE_DIR)
find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library
PATHS
${CMAKE_INSTALL_PREFIX}/include
${KDE4_INCLUDE_DIR}
PATH_SUFFIXES eigen3 eigen
)
if(EIGEN3_INCLUDE_DIR)
_eigen3_check_version()
endif(EIGEN3_INCLUDE_DIR)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Eigen3 DEFAULT_MSG EIGEN3_INCLUDE_DIR EIGEN3_VERSION_OK)
mark_as_advanced(EIGEN3_INCLUDE_DIR)
endif(EIGEN3_INCLUDE_DIR)

39
cMake/FindF2C.cmake Normal file
View File

@@ -0,0 +1,39 @@
# This module finds the f2c library.
#
# This module sets the following variables:
# F2C_FOUND - set to true if library is found
# F2C_DEFINITIONS - compilation options to use f2c
# F2C_LIBRARIES - f2c library name (using full path name)
if (F2C_LIBRARIES)
set(F2C_FOUND TRUE)
else(F2C_LIBRARIES)
set(F2C_DEFINITIONS)
find_library(F2C_LIBRARIES f2c
/usr/lib
/usr/local/lib
)
if(F2C_LIBRARIES)
set(F2C_FOUND TRUE)
else()
set(F2C_FOUND FALSE)
endif()
if(NOT F2C_FIND_QUIETLY)
if(F2C_FOUND)
message(STATUS "f2c library found.")
else(F2C_FOUND)
if(F2C_FIND_REQUIRED)
message(FATAL_ERROR "f2c library not found. Please specify library location.")
else()
message(STATUS "f2c library not found. Please specify library location.")
endif()
endif(F2C_FOUND)
endif(NOT F2C_FIND_QUIETLY)
endif(F2C_LIBRARIES)

58
cMake/FindKDL.cmake Normal file
View File

@@ -0,0 +1,58 @@
# Locate KDL install directory
# This module defines
# KDL_INSTALL where to find include, lib, bin, etc.
# KDL_FOUND, is set to true
#INCLUDE (${PROJECT_SOURCE_DIR}/config/FindPkgConfig.cmake)
IF ( CMAKE_PKGCONFIG_EXECUTABLE )
MESSAGE( STATUS "Detecting KDL" )
SET(ENV{PKG_CONFIG_PATH} "${KDL_INSTALL}/lib/pkgconfig/")
MESSAGE( "Looking for KDL in: ${KDL_INSTALL}")
PKGCONFIG( "orocos-kdl >= 0.99" KDL_FOUND KDL_INCLUDE_DIRS KDL_DEFINES KDL_LINK_DIRS KDL_LIBS )
IF( KDL_FOUND )
MESSAGE(" Includes in: ${KDL_INCLUDE_DIRS}")
MESSAGE(" Libraries in: ${KDL_LINK_DIRS}")
MESSAGE(" Libraries: ${KDL_LIBS}")
MESSAGE(" Defines: ${KDL_DEFINES}")
INCLUDE_DIRECTORIES( ${KDL_INCLUDE_DIRS} )
LINK_DIRECTORIES( ${KDL_LINK_DIRS})
#OROCOS_PKGCONFIG_INCPATH("${KDLTK_INCLUDE_DIRS}")
#OROCOS_PKGCONFIG_LIBS("${KDL_LIBS}")
#OROCOS_PKGCONFIG_LIBPATH("${KDL_LINK_DIRS}")
SET(ENV{PKG_CONFIG_PATH} "${KDL_INSTALL}/lib/pkgconfig/:${OROCOS_INSTALL}/lib/pkgconfig")
MESSAGE( "Looking for KDL Toolkit in: ${PKG_CONFIG_PATH}")
PKGCONFIG( "orocos-kdltk-${OROCOS_TARGET} >= 0.99" KDLTK_FOUND KDLTK_INCLUDE_DIRS KDLTK_DEFINES KDLTK_LINK_DIRS KDLTK_LIBS )
IF(KDLTK_FOUND)
INCLUDE_DIRECTORIES( ${KDLTK_INCLUDE_DIRS} )
LINK_DIRECTORIES( ${KDLTK_LINK_DIRS})
OROCOS_PKGCONFIG_INCPATH("${KDLTK_INCLUDE_DIRS}")
OROCOS_PKGCONFIG_LIBPATH("${KDLTK_LINK_DIRS}")
OROCOS_PKGCONFIG_LIBS("${KDLTK_LIBS}")
IF(CORBA_ENABLED)
SET(ENV{PKG_CONFIG_PATH} "${KDL_INSTALL}/lib/pkgconfig/:${OROCOS_INSTALL}/lib/pkgconfig")
MESSAGE("Looking for KDL Toolkit CORBA extension in ${PKG_CONFIG_PATH}")
PKGCONFIG( "orocos-kdltk-corba-${OROCOS_TARGET} >= 0.99" KDLTKCORBA_FOUND KDLTKCORBA_INCLUDE_DIRS KDLTKCORBA_DEFINES KDLTKCORBA_LINK_DIRS KDLTKCORBA_LIBS )
IF(KDLTKCORBA_FOUND)
INCLUDE_DIRECTORIES( ${KDLTKCORBA_INCLUDE_DIRS} )
LINK_DIRECTORIES( ${KDLTKCORBA_LINK_DIRS})
OROCOS_PKGCONFIG_INCPATH("${KDLTKCORBA_INCLUDE_DIRS}")
OROCOS_PKGCONFIG_LIBPATH("${KDLTKCORBA_LINK_DIRS}")
OROCOS_PKGCONFIG_LIBS("${KDLTKCORBA_LIBS}")
ENDIF ( KDLTKCORBA_FOUND )
ENDIF(CORBA_ENABLED)
ENDIF ( KDLTK_FOUND )
ENDIF ( KDL_FOUND )
ELSE ( CMAKE_PKGCONFIG_EXECUTABLE )
# Can't find pkg-config -- have to search manually
MESSAGE( FATAL_ERROR "Can't find KDL without pkgconfig !")
ENDIF ( CMAKE_PKGCONFIG_EXECUTABLE )

80
cMake/FindODE.cmake Normal file
View File

@@ -0,0 +1,80 @@
# - Try to find the Open Dynamics Engine library
# Once done this will define:
#
# ODE_FOUND - system has the ODE library
# ODE_INCLUDE_DIRS - the ODE include directory (include ODE headers with <ode/headername.h>)
# ODE_LIBRARIES - the ODE library
# ODE_DEFINITIONS - additional definitions necessary to use ODE (usually the precision flag)
if (ODE_INCLUDE_DIRS AND ODE_LIBRARIES)
# ODE has already been found and the necessary variables are cached
set(ODE_FOUND TRUE)
else (ODE_INCLUDE_DIRS AND ODE_LIBRARIES)
# Find ODE
# Use PkgConfig if possible
if (NOT WIN32)
find_package(PkgConfig)
pkg_check_modules(PC_ODE ode)
endif (NOT WIN32)
# Find include dir
find_path(ODE_INCLUDE_DIRS ode/ode.h
HINTS ${PC_ODE_INCLUDEDIR}
PATHS $ENV{OGRE_HOME}/include # ODE is shipped with the OGRE SDK
)
find_library(ODE_LIBRARIES ode
NAMES ode ${PC_ODE_LIBRARIES}
HINTS ${PC_ODE_LIBDIR}
PATHS $ENV{OGRE_HOME}/lib
)
# Decide if ODE was found
set(ODE_FOUND FALSE)
if (ODE_INCLUDE_DIRS AND ODE_LIBRARIES)
set(ODE_FOUND TRUE)
endif (ODE_INCLUDE_DIRS AND ODE_LIBRARIES)
# Find out extra definitions needed for ODE.
# This is mostly needed for the ODE's precision selector:
# ODE can be built either in single-precision (default) or double-precision mode. The app has
# to be built in the same mode, otherwise things will crash.
if (ODE_FOUND)
# If PkgConfig found anything, then use its results, otherwise use ode-config script
if (PC_ODE_FOUND)
# Take the definitions from PkgConfig results
set(ODE_DEFINITIONS ${PC_ODE_CFLAGS_OTHER} CACHE STRING "")
set(ODE_DEFINITIONS_FOUND TRUE)
else (PC_ODE_FOUND)
# Try to use ode-config
find_program(ODECONFIG_EXECUTABLE ode-config)
if (ODECONFIG_EXECUTABLE)
execute_process(COMMAND ${ODECONFIG_EXECUTABLE} --cflags OUTPUT_VARIABLE ODECONFIG_CFLAGS)
set(ODE_DEFINITIONS ${ODECONFIG_CFLAGS} CACHE STRING "")
set(ODE_DEFINITIONS_FOUND TRUE)
endif (ODECONFIG_EXECUTABLE)
endif (PC_ODE_FOUND)
endif (ODE_FOUND)
# Show messages
if (ODE_FOUND)
if (NOT ODE_FIND_QUIETLY)
message(STATUS "Found ODE: ${ODE_LIBRARIES}")
# Show the ODE precision if the definitions were detected
if (ODE_DEFINITIONS_FOUND)
if (ODE_DEFINITIONS MATCHES -DdDOUBLE)
message(STATUS "ODE uses double precision")
else (ODE_DEFINITIONS MATCHES -DdDOUBLE)
message(STATUS "ODE uses single precision")
endif (ODE_DEFINITIONS MATCHES -DdDOUBLE)
else (ODE_DEFINITIONS_FOUND)
message(STATUS "Warning: couldn't determine ODE's precision")
endif (ODE_DEFINITIONS_FOUND)
endif (NOT ODE_FIND_QUIETLY)
else (ODE_FOUND)
if (ODE_FIND_REQUIRED)
message(FATAL_ERROR "Could NOT find ODE")
endif (ODE_FIND_REQUIRED)
endif (ODE_FOUND)
endif(ODE_INCLUDE_DIRS AND ODE_LIBRARIES)

249
cMake/FindOpenCV.cmake Normal file
View File

@@ -0,0 +1,249 @@
# - Try to find OpenCV library installation
# See http://sourceforge.net/projects/opencvlibrary/
#
# The follwoing variables are optionally searched for defaults
# OpenCV_ROOT_DIR: Base directory of OpenCv tree to use.
# OpenCV_FIND_REQUIRED_COMPONENTS : FIND_PACKAGE(OpenCV COMPONENTS ..)
# compatible interface. typically CV CXCORE CVAUX HIGHGUI CVCAM .. etc.
#
# The following are set after configuration is done:
# OpenCV_FOUND
# OpenCV_INCLUDE_DIR
# OpenCV_LIBRARIES
# OpenCV_LINK_DIRECTORIES
#
# deprecated:
# OPENCV_* uppercase replaced by case sensitive OpenCV_*
# OPENCV_EXE_LINKER_FLAGS
# OPENCV_INCLUDE_DIR : replaced by plural *_DIRS
#
# 2004/05 Jan Woetzel, Friso, Daniel Grest
# 2006/01 complete rewrite by Jan Woetzel
# 1006/09 2nd rewrite introducing ROOT_DIR and PATH_SUFFIXES
# to handle multiple installed versions gracefully by Jan Woetzel
#
# tested with:
# -OpenCV 0.97 (beta5a): MSVS 7.1, gcc 3.3, gcc 4.1
# -OpenCV 0.99 (1.0rc1): MSVS 7.1
#
# www.mip.informatik.uni-kiel.de/~jw
# --------------------------------
MACRO(DBG_MSG _MSG)
# MESSAGE(STATUS "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}):\n${_MSG}")
ENDMACRO(DBG_MSG)
# required cv components with header and library if COMPONENTS unspecified
IF (NOT OpenCV_FIND_COMPONENTS)
# default
SET(OpenCV_FIND_REQUIRED_COMPONENTS CV CXCORE CVAUX HIGHGUI )
IF (WIN32)
LIST(APPEND OpenCV_FIND_REQUIRED_COMPONENTS CVCAM ) # WIN32 only actually
ENDIF(WIN32)
ENDIF (NOT OpenCV_FIND_COMPONENTS)
# typical root dirs of installations, exactly one of them is used
SET (OpenCV_POSSIBLE_ROOT_DIRS
"${OpenCV_ROOT_DIR}"
"$ENV{OpenCV_ROOT_DIR}"
"$ENV{OPENCV_DIR}" # only for backward compatibility deprecated by ROOT_DIR
"$ENV{OPENCV_HOME}" # only for backward compatibility
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Intel(R) Open Source Computer Vision Library_is1;Inno Setup: App Path]"
"$ENV{ProgramFiles}/OpenCV"
/usr/local
/usr
)
# MIP Uni Kiel /opt/net network installation
# get correct prefix for current gcc compiler version for gcc 3.x 4.x
IF (${CMAKE_COMPILER_IS_GNUCXX})
IF (NOT OpenCV_FIND_QUIETLY)
MESSAGE(STATUS "Checking GNUCXX version 3/4 to determine OpenCV /opt/net/ path")
ENDIF (NOT OpenCV_FIND_QUIETLY)
EXEC_PROGRAM(${CMAKE_CXX_COMPILER} ARGS --version OUTPUT_VARIABLE CXX_COMPILER_VERSION)
IF (CXX_COMPILER_VERSION MATCHES ".*3\\.[0-9].*")
SET(IS_GNUCXX3 TRUE)
LIST(APPEND OpenCV_POSSIBLE_ROOT_DIRS /opt/net/gcc33/OpenCV )
ENDIF(CXX_COMPILER_VERSION MATCHES ".*3\\.[0-9].*")
IF (CXX_COMPILER_VERSION MATCHES ".*4\\.[0-9].*")
SET(IS_GNUCXX4 TRUE)
LIST(APPEND OpenCV_POSSIBLE_ROOT_DIRS /opt/net/gcc41/OpenCV )
ENDIF(CXX_COMPILER_VERSION MATCHES ".*4\\.[0-9].*")
ENDIF (${CMAKE_COMPILER_IS_GNUCXX})
#DBG_MSG("DBG (OpenCV_POSSIBLE_ROOT_DIRS=${OpenCV_POSSIBLE_ROOT_DIRS}")
#
# select exactly ONE OpenCV base directory/tree
# to avoid mixing different version headers and libs
#
FIND_PATH(OpenCV_ROOT_DIR
NAMES
cv/include/cv.h # windows
include/opencv/cv.h # linux /opt/net
include/cv/cv.h
include/cv.h
PATHS ${OpenCV_POSSIBLE_ROOT_DIRS})
DBG_MSG("OpenCV_ROOT_DIR=${OpenCV_ROOT_DIR}")
# header include dir suffixes appended to OpenCV_ROOT_DIR
SET(OpenCV_INCDIR_SUFFIXES
include
include/cv
include/opencv
cv/include
cxcore/include
cvaux/include
otherlibs/cvcam/include
otherlibs/highgui
otherlibs/highgui/include
otherlibs/_graphics/include
)
# library linkdir suffixes appended to OpenCV_ROOT_DIR
SET(OpenCV_LIBDIR_SUFFIXES
lib
OpenCV/lib
otherlibs/_graphics/lib
)
#DBG_MSG("OpenCV_LIBDIR_SUFFIXES=${OpenCV_LIBDIR_SUFFIXES}")
#
# find incdir for each lib
#
FIND_PATH(OpenCV_CV_INCLUDE_DIR
NAMES cv.h
PATHS ${OpenCV_ROOT_DIR}
PATH_SUFFIXES ${OpenCV_INCDIR_SUFFIXES} )
FIND_PATH(OpenCV_CXCORE_INCLUDE_DIR
NAMES cxcore.h
PATHS ${OpenCV_ROOT_DIR}
PATH_SUFFIXES ${OpenCV_INCDIR_SUFFIXES} )
FIND_PATH(OpenCV_CVAUX_INCLUDE_DIR
NAMES cvaux.h
PATHS ${OpenCV_ROOT_DIR}
PATH_SUFFIXES ${OpenCV_INCDIR_SUFFIXES} )
FIND_PATH(OpenCV_HIGHGUI_INCLUDE_DIR
NAMES highgui.h
PATHS ${OpenCV_ROOT_DIR}
PATH_SUFFIXES ${OpenCV_INCDIR_SUFFIXES} )
FIND_PATH(OpenCV_CVCAM_INCLUDE_DIR
NAMES cvcam.h
PATHS ${OpenCV_ROOT_DIR}
PATH_SUFFIXES ${OpenCV_INCDIR_SUFFIXES} )
#
# find sbsolute path to all libraries
# some are optionally, some may not exist on Linux
#
FIND_LIBRARY(OpenCV_CV_LIBRARY
NAMES cv opencv
PATHS ${OpenCV_ROOT_DIR}
PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_CVAUX_LIBRARY
NAMES cvaux
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_CVCAM_LIBRARY
NAMES cvcam
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_CVHAARTRAINING_LIBRARY
NAMES cvhaartraining
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_CXCORE_LIBRARY
NAMES cxcore
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_CXTS_LIBRARY
NAMES cxts
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_HIGHGUI_LIBRARY
NAMES highgui
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_ML_LIBRARY
NAMES ml
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
FIND_LIBRARY(OpenCV_TRS_LIBRARY
NAMES trs
PATHS ${OpenCV_ROOT_DIR} PATH_SUFFIXES ${OpenCV_LIBDIR_SUFFIXES} )
#
# Logic selecting required libs and headers
#
SET(OpenCV_FOUND ON)
DBG_MSG("OpenCV_FIND_REQUIRED_COMPONENTS=${OpenCV_FIND_REQUIRED_COMPONENTS}")
FOREACH(NAME ${OpenCV_FIND_REQUIRED_COMPONENTS} )
# only good if header and library both found
IF (OpenCV_${NAME}_INCLUDE_DIR AND OpenCV_${NAME}_LIBRARY)
LIST(APPEND OpenCV_INCLUDE_DIRS ${OpenCV_${NAME}_INCLUDE_DIR} )
LIST(APPEND OpenCV_LIBRARIES ${OpenCV_${NAME}_LIBRARY} )
#DBG_MSG("appending for NAME=${NAME} ${OpenCV_${NAME}_INCLUDE_DIR} and ${OpenCV_${NAME}_LIBRARY}" )
ELSE (OpenCV_${NAME}_INCLUDE_DIR AND OpenCV_${NAME}_LIBRARY)
DBG_MSG("OpenCV component NAME=${NAME} not found! "
"\nOpenCV_${NAME}_INCLUDE_DIR=${OpenCV_${NAME}_INCLUDE_DIR} "
"\nOpenCV_${NAME}_LIBRARY=${OpenCV_${NAME}_LIBRARY} ")
SET(OpenCV_FOUND OFF)
ENDIF (OpenCV_${NAME}_INCLUDE_DIR AND OpenCV_${NAME}_LIBRARY)
ENDFOREACH(NAME)
DBG_MSG("OpenCV_INCLUDE_DIRS=${OpenCV_INCLUDE_DIRS}")
DBG_MSG("OpenCV_LIBRARIES=${OpenCV_LIBRARIES}")
# get the link directory for rpath to be used with LINK_DIRECTORIES:
IF (OpenCV_CV_LIBRARY)
GET_FILENAME_COMPONENT(OpenCV_LINK_DIRECTORIES ${OpenCV_CV_LIBRARY} PATH)
ENDIF (OpenCV_CV_LIBRARY)
MARK_AS_ADVANCED(
OpenCV_ROOT_DIR
OpenCV_INCLUDE_DIRS
OpenCV_CV_INCLUDE_DIR
OpenCV_CXCORE_INCLUDE_DIR
OpenCV_CVAUX_INCLUDE_DIR
OpenCV_CVCAM_INCLUDE_DIR
OpenCV_HIGHGUI_INCLUDE_DIR
OpenCV_LIBRARIES
OpenCV_CV_LIBRARY
OpenCV_CXCORE_LIBRARY
OpenCV_CVAUX_LIBRARY
OpenCV_CVCAM_LIBRARY
OpenCV_CVHAARTRAINING_LIBRARY
OpenCV_CXTS_LIBRARY
OpenCV_HIGHGUI_LIBRARY
OpenCV_ML_LIBRARY
OpenCV_TRS_LIBRARY
)
# be backward compatible:
SET(OPENCV_LIBRARIES ${OpenCV_LIBRARIES} )
SET(OPENCV_INCLUDE_DIR ${OpenCV_INCLUDE_DIRS} )
SET(OPENCV_FOUND ${OpenCV_FOUND})
# display help message
IF(NOT OpenCV_FOUND)
# make FIND_PACKAGE friendly
IF(NOT OpenCV_FIND_QUIETLY)
IF(OpenCV_FIND_REQUIRED)
MESSAGE(FATAL_ERROR
"OpenCV required but some headers or libs not found. Please specify it's location with OpenCV_ROOT_DIR env. variable.")
ELSE(OpenCV_FIND_REQUIRED)
MESSAGE(STATUS
"ERROR: OpenCV was not found.")
ENDIF(OpenCV_FIND_REQUIRED)
ENDIF(NOT OpenCV_FIND_QUIETLY)
ENDIF(NOT OpenCV_FOUND)

View File

@@ -0,0 +1,83 @@
# Try to find OCC
# Once done this will define
#
# OCC_FOUND - system has OCC - OpenCASCADE
# OCC_INCLUDE_DIR - where the OCC include directory can be found
# OCC_LIBRARY_DIR - where the OCC library directory can be found
# OCC_LIBRARIES - Link this to use OCC
#
IF (WIN32)
IF (CYGWIN OR MINGW)
FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx
/usr/include/opencascade
/usr/local/include/opencascade
)
FIND_LIBRARY(OCC_LIBRARY TKernel
/usr/lib
/usr/local/lib
/opt/opencascade/lib
)
ELSE (CYGWIN OR MINGW)
FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\OCC\\2;Installation Path]/include"
)
FIND_LIBRARY(OCC_LIBRARY TKernel
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\OCC\\2;Installation Path]/lib"
)
ENDIF (CYGWIN OR MINGW)
ELSE (WIN32)
FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx
/usr/include/opencascade
/usr/local/include/opencascade
/opt/opencascade/include
)
FIND_LIBRARY(OCC_LIBRARY TKernel
/usr/lib
/usr/local/lib
/opt/opencascade/lib
)
ENDIF (WIN32)
SET(OCC_FOUND FALSE)
IF(OCC_LIBRARY)
GET_FILENAME_COMPONENT(OCC_LIBRARY_DIR ${OCC_LIBRARY} PATH)
SET(OCC_FOUND TRUE)
set(OCC_LIBRARIES
TKFillet
TKMesh
TKernel
TKG2d
TKG3d
TKMath
TKIGES
TKSTL
TKShHealing
TKXSBase
TKBool
TKBO
TKBRep
TKTopAlgo
TKGeomAlgo
TKGeomBase
TKOffset
TKPrim
TKSTEP
TKSTEPBase
TKSTEPAttr
TKHLR
)
ENDIF(OCC_LIBRARY)

38
cMake/FindSMESH.cmake Normal file
View File

@@ -0,0 +1,38 @@
# Try to find Salome SMESH
# Once done this will define
#
# SMESH_FOUND - system has Salome SMESH
# SMESH_INCLUDE_DIR - where the Salome SMESH include directory can be found
# SMESH_LIBRARIES - Link this to use Salome SMESH
#
IF (CMAKE_COMPILER_IS_GNUCC)
FIND_PATH(SMESH_INCLUDE_DIR SMESH_Mesh.hxx
/usr/include
/usr/local/include
)
FIND_LIBRARY(SMESH_LIBRARY SMESH
/usr/lib
/usr/local/lib
)
ELSE (CMAKE_COMPILER_IS_GNUCC)
# Not yet implemented
ENDIF (CMAKE_COMPILER_IS_GNUCC)
SET(SMESH_FOUND FALSE)
IF(SMESH_LIBRARY)
SET(SMESH_FOUND TRUE)
GET_FILENAME_COMPONENT(SMESH_LIBRARY_DIR ${SMESH_LIBRARY} PATH)
set(SMESH_LIBRARIES
${SMESH_LIBRARY_DIR}/libDriver.so
${SMESH_LIBRARY_DIR}/libDriverDAT.so
${SMESH_LIBRARY_DIR}/libDriverSTL.so
${SMESH_LIBRARY_DIR}/libDriverUNV.so
${SMESH_LIBRARY_DIR}/libSMDS.so
${SMESH_LIBRARY_DIR}/libSMESH.so
${SMESH_LIBRARY_DIR}/libSMESHDS.so
${SMESH_LIBRARY_DIR}/libStdMeshers.so
)
ENDIF(SMESH_LIBRARY)

115
cMake/FindSoQt.cmake Normal file
View File

@@ -0,0 +1,115 @@
#############################################################################
# Description:
# Try to find SoQt library.
# Once run this will define:
#
# SOQT_FOUND
# SOQT_LIBRARIES
# SOQT_LIBRARY_RELEASE
# SOQT_LIBRARY_DEBUG
#
#############################################################################
IF(UNIX OR WIN32)
IF(WIN32)
IF(MINGW)
FIND_LIBRARY(SOQT_LIBRARY
NAMES SoQt #only shared libraries under windows
PATHS
/usr/lib
/usr/local/lib
/lib
"$ENV{COINDIR}/lib"
)
ELSE(MINGW)
FIND_LIBRARY(SOQT_LIBRARY_RELEASE
#only shared libraries under windows
NAMES soqt1
PATHS
"$ENV{COINDIR}/lib"
)
FIND_LIBRARY(SOQT_LIBRARY_DEBUG
NAMES soqt1d #only shared libraries under windows
PATHS
"$ENV{COINDIR}/lib"
)
FIND_PATH(SOQT_INCLUDE_PATH Inventor/Qt/SoQt.h
"$ENV{COINDIR}/include"
"$ENV{INCLUDE}"
)
MARK_AS_ADVANCED(
SOQT_LIBRARY_DEBUG
SOQT_LIBRARY_RELEASE
SOQT_INCLUDE_PATH
)
ENDIF(MINGW)
ELSE(WIN32)
FIND_LIBRARY(SOQT_LIBRARY
NAMES SoQt #only shared libraries under windows
PATHS
/usr/lib
/usr/local/lib
/lib
"$ENV{COINDIR}/lib"
)
#MESSAGE(STATUS "DBG SOQT_LIBRARY=${SOQT_LIBRARY}")
ENDIF(WIN32)
## --------------------------------
IF(SOQT_LIBRARY OR SOQT_LIBRARY_DEBUG OR SOQT_LIBRARY_RELEASE)
IF(WIN32)
IF(SOQT_LIBRARY_RELEASE AND NOT SOQT_LIBRARY_DEBUG)
SET(SOQT_LIBRARY_RELEASE ${SOQT_LIBRARY_RELEASE})
ENDIF(SOQT_LIBRARY_RELEASE AND NOT SOQT_LIBRARY_DEBUG)
IF(SOQT_LIBRARY_DEBUG AND NOT SOQT_LIBRARY_RELEASE)
SET(SOQT_LIBRARY_DEBUG ${SOQT_LIBRARY_DEBUG})
ENDIF(SOQT_LIBRARY_DEBUG AND NOT SOQT_LIBRARY_RELEASE)
IF(SOQT_LIBRARY_RELEASE AND SOQT_LIBRARY_DEBUG)
SET(SOQT_LIBRARY_RELEASE ${SOQT_LIBRARY_RELEASE})
SET(SOQT_LIBRARY_DEBUG ${SOQT_LIBRARY_DEBUG})
ENDIF(SOQT_LIBRARY_RELEASE AND SOQT_LIBRARY_DEBUG)
IF(MINGW)
SET(SOQT_LIBRARIES ${SOQT_LIBRARY})
MARK_AS_ADVANCED(
SOQT_LIBRARIES
SOQT_LIBRARY
)
ENDIF(MINGW)
ELSE(WIN32)
SET(SOQT_LIBRARIES ${SOQT_LIBRARY})
MARK_AS_ADVANCED(
SOQT_LIBRARIES
SOQT_LIBRARY
)
ENDIF(WIN32)
SET(SOQT_FOUND TRUE)
ELSE(SOQT_LIBRARY OR SOQT_LIBRARY_DEBUG OR SOQT_LIBRARY_RELEASE)
SET(SOQT_FOUND FALSE)
#MESSAGE("SoQt library not found.")
ENDIF(SOQT_LIBRARY OR SOQT_LIBRARY_DEBUG OR SOQT_LIBRARY_RELEASE)
IF(WIN32)
IF(SOQT_INCLUDE_PATH)
set(SOQT_INCLUDE_DIR ${SOQT_INCLUDE_PATH})
ELSE(SOQT_INCLUDE_PATH)
#MESSAGE("Can not find SoQt includes")
ENDIF(SOQT_INCLUDE_PATH)
MARK_AS_ADVANCED(
SOQT_INCUDE_DIR
)
ENDIF(WIN32)
#MESSAGE(STATUS "SOQT_FOUND : ${SOQT_FOUND}")
ELSE(UNIX OR WIN32)
SET(SOQT_FOUND FALSE)
ENDIF(UNIX OR WIN32)

35
cMake/FindSpnav.cmake Normal file
View File

@@ -0,0 +1,35 @@
IF(UNIX)
set(TEST_SPNAV_CMAKE TRUE)
FIND_PATH(SPNAV_INCLUDE_PATH spnav.h
)
FIND_LIBRARY(SPNAV_LIBRARY
NAMES
spnav libspnav
)
if(SPNAV_INCLUDE_PATH AND SPNAV_LIBRARY)
set(SPNAV_FOUND TRUE)
set(SPNAV_LIBRARIES ${SPNAV_LIBRARY})
set(SPNAV_INCLUDE_DIR ${SPNAV_INCLUDE_PATH})
endif(SPNAV_INCLUDE_PATH AND SPNAV_LIBRARY)
if(TEST_SPNAV_CMAKE)
if(SPNAV_INCLUDE_PATH)
MESSAGE("found spnav include path ${SPNAV_INCLUDE_PATH}")
else(SPNAV_INCLUDE_PATH)
MESSAGE("didn't find spnav include path")
endif(SPNAV_INCLUDE_PATH)
if(SPNAV_LIBRARY)
MESSAGE("found spnav library ${SPNAV_LIBRARY}")
else(SPNAV_LIBRARY)
MESSAGE("didn't find spnav library")
endif(SPNAV_LIBRARY)
endif(TEST_SPNAV_CMAKE)
ENDIF(UNIX)

164
cMake/FindWix.cmake Normal file
View File

@@ -0,0 +1,164 @@
# - Try to find Windows Installer XML
# See http://wix.sourceforge.net
#
# The follwoing variables are optionally searched for defaults
# WIX_ROOT_DIR: Base directory of WIX2 tree to use.
#
# The following are set after configuration is done:
# WIX_FOUND
# WIX_ROOT_DIR
# WIX_CANDLE
# WIX_LIGHT
#
# 2009/02 Petr Pytelka (pyta at lightcomp.cz)
#
MACRO(DBG_MSG _MSG)
# MESSAGE(STATUS "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}):\n ${_MSG}")
ENDMACRO(DBG_MSG)
# typical root dirs of installations, exactly one of them is used
SET (WIX_POSSIBLE_ROOT_DIRS
"${WIX_ROOT_DIR}"
"$ENV{WIX_ROOT_DIR}"
"$ENV{ProgramFiles}/Windows Installer XML"
)
#DBG_MSG("DBG (WIX_POSSIBLE_ROOT_DIRS=${WIX_POSSIBLE_ROOT_DIRS}")
#
# select exactly ONE WIX base directory/tree
# to avoid mixing different version headers and libs
#
FIND_PATH(WIX_ROOT_DIR
NAMES
bin/candle.exe
bin/light.exe
PATHS ${WIX_POSSIBLE_ROOT_DIRS})
DBG_MSG("WIX_ROOT_DIR=${WIX_ROOT_DIR}")
#
# Logic selecting required libs and headers
#
SET(WIX_FOUND OFF)
IF(WIX_ROOT_DIR)
SET(WIX_FOUND ON)
ENDIF(WIX_ROOT_DIR)
# display help message
IF(NOT WIX_FOUND)
# make FIND_PACKAGE friendly
IF(NOT WIX_FIND_QUIETLY)
IF(WIX_FIND_REQUIRED)
MESSAGE(FATAL_ERROR
"Windows Installer XML required but some files not found. Please specify it's location with WIX_ROOT_DIR env. variable.")
ELSE(WIX_FIND_REQUIRED)
MESSAGE(STATUS
"ERROR: Windows Installer XML was not found.")
ENDIF(WIX_FIND_REQUIRED)
ENDIF(NOT WIX_FIND_QUIETLY)
ELSE(NOT WIX_FOUND)
SET(WIX_CANDLE ${WIX_ROOT_DIR}/bin/candle.exe)
SET(WIX_LIGHT ${WIX_ROOT_DIR}/bin/light.exe)
# MESSAGE(STATUS "Windows Installer XML found.")
ENDIF(NOT WIX_FOUND)
MARK_AS_ADVANCED(
WIX_ROOT_DIR
WIX_CANDLE
WIX_LIGHT
)
#
# Call wix compiler
#
# Parameters:
# _sources - name of list with sources
# _obj - name of list for target objects
#
MACRO(WIX_COMPILE _sources _objs _extra_dep)
DBG_MSG("WIX compile: ${${_sources}}")
FOREACH (_current_FILE ${${_sources}})
GET_FILENAME_COMPONENT(_tmp_FILE ${_current_FILE} ABSOLUTE)
GET_FILENAME_COMPONENT(_basename ${_tmp_FILE} NAME_WE)
SET (SOURCE_WIX_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_current_FILE} )
DBG_MSG("WIX source file: ${SOURCE_WIX_FILE}")
# Check whether source exists
IF(EXISTS ${SOURCE_WIX_FILE})
ELSE(EXISTS ${SOURCE_WIX_FILE})
MESSAGE(FATAL_ERROR "Path not exists: ${SOURCE_WIX_FILE}")
ENDIF(EXISTS ${SOURCE_WIX_FILE})
SET (OUTPUT_WIXOBJ ${_basename}.wixobj )
DBG_MSG("WIX output: ${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_WIXOBJ}")
DBG_MSG("WIX command: ${WIX_CANDLE}")
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_WIXOBJ}
COMMAND ${WIX_CANDLE}
ARGS ${WIX_CANDLE_FLAGS} ${SOURCE_WIX_FILE}
DEPENDS ${SOURCE_WIX_FILE} ${${_extra_dep}}
COMMENT "Compiling ${SOURCE_WIX_FILE} -> ${OUTPUT_WIXOBJ}"
)
SET(${_objs} ${${_objs}} ${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_WIXOBJ} )
DBG_MSG("WIX compile output: ${${_objs}}")
ENDFOREACH (_current_FILE)
ENDMACRO(WIX_COMPILE)
#
# Call wix compiler
#
# Parameters:
# _sources - name of list with sources
# _obj - name of list for target objects
#
MACRO(WIX_COMPILE_ALL _target _sources _extra_dep)
DBG_MSG("WIX compile all: ${${_sources}}, dependencies: ${${_extra_dep}}")
ADD_CUSTOM_COMMAND(
OUTPUT ${_target}
COMMAND ${WIX_CANDLE}
ARGS ${WIX_CANDLE_FLAGS} -out "${_target}" ${${_sources}}
DEPENDS ${${_sources}} ${${_extra_dep}}
COMMENT "Compiling ${${_sources}} -> ${_target}"
)
ENDMACRO(WIX_COMPILE_ALL)
#
# Link MSI file
#
# Parameters
# _target - Name of target file
# _sources - Name of list with sources
#
MACRO(WIX_LINK _target _sources _loc_files)
DBG_MSG("WIX command: ${WIX_LIGHT}\n WIX target: ${_target} objs: ${${_sources}}")
SET( WIX_LINK_FLAGS_A "" )
# Add localization
FOREACH (_current_FILE ${${_loc_files}})
SET( WIX_LINK_FLAGS_A ${WIX_LINK_FLAGS_A} -loc "${_current_FILE}" )
DBG_MSG("WIX link localization: ${_current_FILE}")
ENDFOREACH (_current_FILE)
DBG_MSG("WIX link flags: ${WIX_LINK_FLAGS_A}")
ADD_CUSTOM_COMMAND(
OUTPUT ${_target}
COMMAND ${WIX_LIGHT}
ARGS ${WIX_LINK_FLAGS_A} -out "${_target}" ${${_sources}}
DEPENDS ${${_sources}}
COMMENT "Linking ${${_sources}} -> ${_target}"
)
ENDMACRO(WIX_LINK)

48
cMake/FindXercesC.cmake Normal file
View File

@@ -0,0 +1,48 @@
# Locate Xerces-C include paths and libraries
# Xerces-C can be found at http://xml.apache.org/xerces-c/
# Written by Frederic Heem, frederic.heem _at_ telsey.it
# Modified by Jos van den Oever
# This module defines
# XERCESC_INCLUDE_DIR, where to find ptlib.h, etc.
# XERCESC_LIBRARIES, the libraries to link against to use pwlib.
# XERCESC_FOUND, If false, don't try to use pwlib.
FIND_PATH(XERCESC_INCLUDE_DIR xercesc/dom/DOM.hpp
"[HKEY_CURRENT_USER\\software\\xerces-c\\src]"
"[HKEY_CURRENT_USER\\xerces-c\\src]"
$ENV{XERCESCROOT}/src/
/usr/local/include
/usr/include
)
FIND_LIBRARY(XERCESC_LIBRARIES
NAMES
xerces-c
PATHS
"[HKEY_CURRENT_USER\\software\\xerces-c\\lib]"
"[HKEY_CURRENT_USER\\xerces-c\\lib]"
$ENV{XERCESCROOT}/${LIB_DESTINATION}
/usr/local/${LIB_DESTINATION}
/usr/${LIB_DESTINATION}
)
# if the include a the library are found then we have it
IF(XERCESC_INCLUDE_DIR AND XERCESC_LIBRARIES)
SET(XERCESC_FOUND "YES" )
IF(NOT XERCESC__FIND_QUIETLY)
MESSAGE(STATUS "Found Xerces-C: ${XERCESC_LIBRARIES}")
ENDIF(NOT XERCESC__FIND_QUIETLY)
ELSE(XERCESC_INCLUDE_DIR AND XERCESC_LIBRARIES)
IF(XERCESC_FIND_REQUIRED)
MESSAGE(FATAL_ERROR "Xerces-C was not found.")
ENDIF(XERCESC_FIND_REQUIRED)
IF(NOT XERCESC__FIND_QUIETLY)
MESSAGE(STATUS "Xerces-C was not found.")
ENDIF(NOT XERCESC__FIND_QUIETLY)
ENDIF(XERCESC_INCLUDE_DIR AND XERCESC_LIBRARIES)
#MARK_AS_ADVANCED(
# XERCESC_INCLUDE_DIR
# XERCESC_LIBRARIES
#)

317
cMake/FreeCadMacros.cmake Normal file
View File

@@ -0,0 +1,317 @@
# ================================================================================
# == Macros, mostly for special targets ==========================================
MACRO(COPY_IF_DIFFERENT FROM_DIR TO_DIR FILES TARGETS TAGS)
# Macro to implement copy_if_different for a list of files
# Arguments -
# FROM_DIR - this is the source directory
# TO_DIR - this is the destination directory
# FILES - names of the files to copy
# TODO: add globing.
# TARGETS - List of targets
# TAGS - Since only the file name is used
# to generate rules, pre-pend a user
# supplied tag to prevent duplicate rule errors.
SET(AddTargets "")
FOREACH(SRC ${FILES})
GET_FILENAME_COMPONENT(SRCFILE ${SRC} NAME)
# Command to copy the files to ${STEP1}/src, if changed.
SET(TARGET "${TAGS}/${SRCFILE}")
IF("${FROM_DIR}" STREQUAL "")
SET(FROM ${SRC})
ELSE("${FROM_DIR}" STREQUAL "")
SET(FROM ${FROM_DIR}/${SRC})
ENDIF("${FROM_DIR}" STREQUAL "")
IF("${TO_DIR}" STREQUAL "")
SET(TO ${SRCFILE})
ELSE("${TO_DIR}" STREQUAL "")
SET(TO ${TO_DIR}/${SRCFILE})
ENDIF("${TO_DIR}" STREQUAL "")
ADD_CUSTOM_COMMAND(
OUTPUT ${TARGET}
COMMAND ${CMAKE_COMMAND}
ARGS -E copy_if_different ${FROM} ${TO}
COMMENT "Copying ${SRCFILE} ${TO_DIR}"
)
SET(AddTargets ${AddTargets} ${TARGET})
ENDFOREACH(SRC ${FILES})
SET(${TARGETS} ${AddTargets})
ENDMACRO(COPY_IF_DIFFERENT FROM_DIR TO_DIR FILES TARGETS TAGS)
MACRO (fc_copy_to_mod_path mod_name )
FOREACH (it ${ARGN})
file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/${it}" NATIVE_SOURCE)
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/Mod/${mod_name}/" NATIVE_DEST)
message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST}")
if (WIN32)
else (WIN32)
execute_process( COMMAND ${PLATFORM_MK} ${NATIVE_DEST} )
endif (WIN32)
execute_process( COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST} )
ENDFOREACH(it)
ENDMACRO(fc_copy_to_mod_path)
MACRO (fc_copy_to_path path_name)
FOREACH (it ${ARGN})
file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/${it}" NATIVE_SOURCE)
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${path_name}/" NATIVE_DEST)
message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST}")
if (WIN32)
else (WIN32)
execute_process( COMMAND ${PLATFORM_MK} ${NATIVE_DEST} )
endif (WIN32)
execute_process( COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST} )
ENDFOREACH(it)
ENDMACRO(fc_copy_to_path)
MACRO (fc_copy_sources path_name mod_name)
foreach(it ${ARGN})
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${path_name}/${it}" outfile)
get_filename_component(infile ${it} ABSOLUTE)
get_filename_component(outfile ${outfile} ABSOLUTE)
add_file_dependencies(${infile} ${outfile})
ADD_CUSTOM_COMMAND(
SOURCE ${infile}
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${infile} ${outfile}
TARGET ${mod_name}
OUTPUTS ${outfile}
)
endforeach(it)
ADD_CUSTOM_COMMAND(
SOURCE ${mod_name}
TARGET ${mod_name}
DEPENDS ${ARGN}
)
ENDMACRO(fc_copy_sources)
MACRO (fc_copy_sources_outpath out_path mod_name)
foreach(it ${ARGN})
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${out_path}/${it}" outfile)
get_filename_component(infile ${it} ABSOLUTE)
get_filename_component(outfile ${outfile} ABSOLUTE)
add_file_dependencies(${infile} ${outfile})
ADD_CUSTOM_COMMAND(
SOURCE ${infile}
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${infile} ${outfile}
TARGET ${mod_name}
OUTPUTS ${outfile}
)
endforeach(it)
ADD_CUSTOM_COMMAND(
SOURCE ${mod_name}
TARGET ${mod_name}
DEPENDS ${ARGN}
)
ENDMACRO(fc_copy_sources_outpath)
MACRO (fc_copy_script path_name mod_name)
foreach(it ${ARGN})
file(TO_NATIVE_PATH "${CMAKE_SOURCE_DIR}/src/${path_name}/${it}" infile)
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${path_name}/${it}" outfile)
get_filename_component(infile ${infile} ABSOLUTE)
get_filename_component(outfile ${outfile} ABSOLUTE)
add_file_dependencies(${infile} ${outfile})
ADD_CUSTOM_COMMAND(
SOURCE ${infile}
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${infile} ${outfile}
TARGET ${mod_name}
OUTPUTS ${outfile}
)
endforeach(it)
ADD_CUSTOM_COMMAND(
SOURCE ${mod_name}
TARGET ${mod_name}
DEPENDS ${ARGN}
)
ENDMACRO(fc_copy_script)
macro(copy_to_local_output_paths SOURCE_PATHS)
if(CMAKE_CFG_INTDIR STREQUAL .)
# No Debug/Release output paths
set(DEBUG_LOCAL_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
set(RELEASE_LOCAL_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
else(CMAKE_CFG_INTDIR STREQUAL .)
#set(DEBUG_LOCAL_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/Debug)
#set(RELEASE_LOCAL_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/Release)
set(DEBUG_LOCAL_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
set(RELEASE_LOCAL_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
endif(CMAKE_CFG_INTDIR STREQUAL .)
file(TO_NATIVE_PATH ${SOURCE_PATHS} NATIVE_SOURCE)
file(TO_NATIVE_PATH ${DEBUG_LOCAL_OUTPUT_PATH}/ NATIVE_DEBUG_DESTINATION)
file(TO_NATIVE_PATH ${RELEASE_LOCAL_OUTPUT_PATH}/ NATIVE_RELESE_DESTINATION)
message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEBUG_DESTINATION}")
execute_process(
COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEBUG_DESTINATION}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
if(NOT ${DEBUG_LOCAL_OUTPUT_PATH} STREQUAL ${RELEASE_LOCAL_OUTPUT_PATH})
message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_RELESE_DESTINATION}")
execute_process(
COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_RELESE_DESTINATION}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
endif(NOT ${DEBUG_LOCAL_OUTPUT_PATH} STREQUAL ${RELEASE_LOCAL_OUTPUT_PATH})
endmacro(copy_to_local_output_paths)
macro(copy_to_main_output_paths SOURCE_PATHS)
file(TO_NATIVE_PATH ${SOURCE_PATHS} NATIVE_SOURCE)
file(TO_NATIVE_PATH ${DEBUG_MAIN_OUTPUT_PATH}/ NATIVE_DEBUG_DESTINATION)
file(TO_NATIVE_PATH ${RELEASE_MAIN_OUTPUT_PATH}/ NATIVE_RELESE_DESTINATION)
message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEBUG_DESTINATION}")
execute_process(
COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEBUG_DESTINATION}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
if(NOT ${DEBUG_MAIN_OUTPUT_PATH} STREQUAL ${RELEASE_MAIN_OUTPUT_PATH})
message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_RELESE_DESTINATION}")
execute_process(
COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_RELESE_DESTINATION}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
endif(NOT ${DEBUG_MAIN_OUTPUT_PATH} STREQUAL ${RELEASE_MAIN_OUTPUT_PATH})
endmacro(copy_to_main_output_paths)
# It would be a bit cleaner to generate these files in ${CMAKE_CURRENT_BINARY_DIR}
macro(generate_from_xml BASE_NAME)
file(TO_NATIVE_PATH ${CMAKE_SOURCE_DIR}/src/Tools/generate.py TOOL_PATH)
file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/${BASE_NAME}.xml SOURCE_PATH)
file(TO_NATIVE_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BASE_NAME}.cpp SOURCE_CPP_PATH)
# BASE_NAME may include also a path name
GET_FILENAME_COMPONENT(OUTPUT_PATH ${SOURCE_CPP_PATH} PATH)
if (NOT EXISTS ${SOURCE_CPP_PATH})
# assures the source files are generated at least once
message(STATUS "${SOURCE_CPP_PATH}")
execute_process(COMMAND ${PYTHON_EXECUTABLE} ${TOOL_PATH} --outputPath ${OUTPUT_PATH} ${SOURCE_PATH}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
endif (NOT EXISTS ${SOURCE_CPP_PATH})
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BASE_NAME}.h ${CMAKE_CURRENT_BINARY_DIR}/${BASE_NAME}.cpp
COMMAND ${PYTHON_EXECUTABLE} ${TOOL_PATH} --outputPath ${OUTPUT_PATH} ${BASE_NAME}.xml
MAIN_DEPENDENCY ${BASE_NAME}.xml
DEPENDS ${CMAKE_SOURCE_DIR}/src/Tools/generateTemplates/templateClassPyExport.py
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMENT Building ${BASE_NAME}.h/.cpp out of ${BASE_NAME}.xml
)
endmacro(generate_from_xml)
macro(generate_from_py BASE_NAME OUTPUT_FILE)
file(TO_NATIVE_PATH ${CMAKE_SOURCE_DIR}/src/Tools/PythonToCPP.py TOOL_PATH)
file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/${BASE_NAME}.py SOURCE_PATH)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_FILE}
COMMAND ${PYTHON_EXECUTABLE} ${TOOL_PATH} ${SOURCE_PATH} ${OUTPUT_FILE}
MAIN_DEPENDENCY ${BASE_NAME}.py
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT Building files out of ${BASE_NAME}.py)
endmacro(generate_from_py)
# generates the ui -> cpp h files
#macro(qt4_wrap_ui infiles )
#
#endmacro(qt4_wrap_ui)
# This is a special version of the built in macro qt4_add_resources that generates .cpp files
#
#macro(fc_add_resources outfiles )
# #QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
# set(ARGN )
# foreach (it ${rcc_files})
# get_filename_component(outfilename ${it} NAME_WE)
# get_filename_component(infile ${it} ABSOLUTE)
# get_filename_component(rc_path ${infile} PATH)
# set(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cpp)
# # parse file for dependencies
# # all files are absolute paths or relative to the location of the qrc file
# file(READ "${infile}" _RC_FILE_CONTENTS)
# string(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
# set(_RC_DEPENDS)
# foreach(_RC_FILE ${_RC_FILES})
# string(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
# string(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
# if(NOT _ABS_PATH_INDICATOR)
# set(_RC_FILE "${rc_path}/${_RC_FILE}")
# endif(NOT _ABS_PATH_INDICATOR)
# set(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
# endforeach(_RC_FILE)
# add_custom_command(OUTPUT ${outfile}
# COMMAND ${QT_RCC_EXECUTABLE}
# ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
# MAIN_DEPENDENCY ${infile}
# DEPENDS ${_RC_DEPENDS})
# set(${outfiles} ${${outfiles}} ${outfile})
# endforeach (it)
#endmacro(fc_add_resources)
MACRO (fc_add_resources outfiles )
QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
FOREACH (it ${rcc_files})
GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cpp)
# parse file for dependencies
# all files are absolute paths or relative to the location of the qrc file
FILE(READ "${infile}" _RC_FILE_CONTENTS)
STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
SET(_RC_DEPENDS)
FOREACH(_RC_FILE ${_RC_FILES})
STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
IF(NOT _ABS_PATH_INDICATOR)
SET(_RC_FILE "${rc_path}/${_RC_FILE}")
ENDIF(NOT _ABS_PATH_INDICATOR)
SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
ENDFOREACH(_RC_FILE)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_RCC_EXECUTABLE}
ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile}
DEPENDS ${_RC_DEPENDS})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (fc_add_resources)
MACRO(ADD_MSVC_PRECOMPILED_HEADER PrecompiledHeader PrecompiledSource SourcesVar)
IF(MSVC)
GET_FILENAME_COMPONENT(PrecompiledBasename ${PrecompiledHeader} NAME_WE)
SET(PrecompiledBinary "$(IntDir)\\$(TargetName).pch")
SET(Sources ${${SourcesVar}})
SET_SOURCE_FILES_PROPERTIES(${PrecompiledSource}
PROPERTIES COMPILE_FLAGS "/Yc\"${PrecompiledHeader}\" /Fp\"${PrecompiledBinary}\""
OBJECT_OUTPUTS "${PrecompiledBinary}")
SET_SOURCE_FILES_PROPERTIES(${Sources}
PROPERTIES COMPILE_FLAGS "/Yu\"${PrecompiledHeader}\" /FI\"${PrecompiledBinary}\" /Fp\"${PrecompiledBinary}\""
OBJECT_DEPENDS "${PrecompiledBinary}")
# Add precompiled header to SourcesVar
LIST(APPEND ${SourcesVar} ${PrecompiledSource})
ENDIF(MSVC)
ENDMACRO(ADD_MSVC_PRECOMPILED_HEADER)
MACRO(GET_MSVC_PRECOMPILED_SOURCE PrecompiledSource SourcesVar)
IF(MSVC)
FOREACH (it ${ARGN})
GET_FILENAME_COMPONENT(file_ext ${it} EXT)
GET_FILENAME_COMPONENT(file_name ${it} NAME)
STRING(COMPARE EQUAL ${it} ${PrecompiledSource} pch)
IF (NOT pch)
# get c++ source files
STRING(REGEX MATCH "^(.cpp|.cc|.cxx)$" cpp_file ${file_ext})
# ignore any generated source files from Qt
STRING(REGEX MATCH "^(moc_|qrc_|ui_)" gen_file ${file_name})
IF(cpp_file AND NOT gen_file)
LIST(APPEND ${SourcesVar} ${it})
ENDIF(cpp_file AND NOT gen_file)
ENDIF(NOT pch)
ENDFOREACH (it)
ENDIF(MSVC)
ENDMACRO(GET_MSVC_PRECOMPILED_SOURCE)

307
cMake/UseLibPack6x.cmake Normal file
View File

@@ -0,0 +1,307 @@
# ================================================================================
# == Win32 is default behaviour use the LibPack copied in Source tree ============
# --------------------------------------------------------------------------------
# General includes
link_directories(${FREECAD_LIBPACK_DIR}/lib)
include_directories(${FREECAD_LIBPACK_DIR}/include)
# OpenGL
set(OPENGL_gl_LIBRARY opengl32 glu32)
# Python
set(PYTHON_DEBUG_LIBRARY python25_d.lib)
set(PYTHON_LIBRARY python25.lib)
set(PYTHON_INCLUDE_PATH ${FREECAD_LIBPACK_DIR}/include/python)
set(PYTHON_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/python.exe)
set(PYTHONLIBS_FOUND TRUE)
# XercesC
set(XERCESC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/xercesc)
set(XERCESC_LIBRARIES xerces-c_2.lib)
set(XERCESC_DEBUG_LIBRARIES xerces-c_2D.lib)
set(XERCESC_FOUND TRUE)
# Boost
set(Boost_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/boost)
set(Boost_LIBRARIES
optimized boost_filesystem-vc80-mt.lib
#optimized boost_graph-vc80-mt.lib
optimized boost_program_options-vc80-mt.lib
optimized boost_regex-vc80-mt.lib
optimized boost_signals-vc80-mt.lib
)
set(Boost_DEBUG_LIBRARIES
debug boost_filesystem-vc80-mt-gd.lib
#debug boost_graph-vc80-mt-gd.lib
debug boost_program_options-vc80-mt-gd.lib
debug boost_regex-vc80-mt-gd.lib
debug boost_signals-vc80-mt-gd.lib
)
set(Boost_FOUND TRUE)
# Zlib
set(ZLIB_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/zlib)
set(ZLIB_LIBRARIES zlib1.lib)
set(ZLIB_FOUND TRUE)
# SMESH
set(SMESH_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/smesh)
set(SMESH_LIBRARIES
StdMeshers.lib
MEFISTO2.lib
SMESH.lib
DriverUNV.lib
SMESHDS.lib
DriverSTL.lib
DriverDAT.lib
Driver.lib
SMDS.lib
)
set(SMESH_FOUND TRUE)
# Coin3D
set(COIN3D_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/coin)
set(COIN3D_LIBRARY_DEBUG coin2d.lib)
set(COIN3D_LIBRARY_RELEASE coin2.lib)
set(COIN3D_FOUND TRUE)
# QT
set(QT_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/QT/
${FREECAD_LIBPACK_DIR}/include/QT/Qt
${FREECAD_LIBPACK_DIR}/include/QT/QtCore
${FREECAD_LIBPACK_DIR}/include/QT/QtGui
${FREECAD_LIBPACK_DIR}/include/QT/QtDesigner
${FREECAD_LIBPACK_DIR}/include/QT/QtSvg
${FREECAD_LIBPACK_DIR}/include/QT/QtNetwork
${FREECAD_LIBPACK_DIR}/include/QT/QtSql
${FREECAD_LIBPACK_DIR}/include/QT/QtTest
${FREECAD_LIBPACK_DIR}/include/QT/QtUiTools
${FREECAD_LIBPACK_DIR}/include/QT/QtXml
${FREECAD_LIBPACK_DIR}/include/QT/QtOpenGl
${FREECAD_LIBPACK_DIR}/include/QT/QtWebKit
)
set(QT_QTCORE_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/QT/
${FREECAD_LIBPACK_DIR}/include/QT/QtCore
)
set(QT_LIBRARIES
optimized QtCore4.lib
optimized QtGui4.lib
optimized QtDesigner4.lib
optimized QtSvg4.lib
optimized QtNetwork4.lib
optimized QtSql4.lib
optimized QtTest4.lib
optimized QtXml4.lib
optimized QtOpenGl4.lib
optimized QtWebKit4.lib
)
set(QT_DEBUG_LIBRARIES
debug QtCored4.lib
debug QtGuid4.lib
debug QtDesignerd4.lib
debug QtSvgd4.lib
debug QtNetworkd4.lib
debug QtSqld4.lib
debug QtTestd4.lib
debug QtXmld4.lib
debug QtOpenGld4.lib
debug QtWebKitd4.lib
)
set(QT_QTCORE_LIBRARY_DEBUG
debug QtCored4.lib
)
set(QT_QTCORE_LIBRARY
optimized QtCore4.lib
)
set(QT_UIC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/uic.exe)
set(QT_MOC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/moc.exe)
set(QT_RCC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/rcc.exe)
MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options)
SET(${_qt4_files})
SET(${_qt4_options})
#SET(_QT4_DOING_OPTIONS FALSE)
FOREACH(_currentArg ${ARGN})
# IF ("${_currentArg}" STREQUAL "OPTIONS")
# SET(_QT4_DOING_OPTIONS TRUE)
# ELSE ("${_currentArg}" STREQUAL "OPTIONS")
# IF(_QT4_DOING_OPTIONS)
# LIST(APPEND ${_qt4_options} "${_currentArg}")
# ELSE(_QT4_DOING_OPTIONS)
LIST(APPEND ${_qt4_files} "${_currentArg}")
# ENDIF(_QT4_DOING_OPTIONS)
# ENDIF ("${_currentArg}" STREQUAL "OPTIONS")
ENDFOREACH(_currentArg)
ENDMACRO (QT4_EXTRACT_OPTIONS)
# macro used to create the names of output files preserving relative dirs
MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile )
STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength)
STRING(LENGTH ${infile} _infileLength)
SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR})
IF(_infileLength GREATER _binlength)
STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile)
IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile})
ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile})
ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
ELSE(_infileLength GREATER _binlength)
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile})
ENDIF(_infileLength GREATER _binlength)
SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}")
STRING(REPLACE ".." "__" _outfile ${_outfile})
GET_FILENAME_COMPONENT(outpath ${_outfile} PATH)
GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE)
FILE(MAKE_DIRECTORY ${outpath})
SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext})
ENDMACRO (QT4_MAKE_OUTPUT_FILE )
MACRO (QT4_WRAP_CPP outfiles )
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
SET(ARGN)
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_MOC_EXECUTABLE}
ARGS ${moc_options} ${it} -o ${outfile}
MAIN_DEPENDENCY ${it}
)
SET(${outfiles} ${${outfiles}} ${outfile})
endforeach(it)
ENDMACRO (QT4_WRAP_CPP)
# This is a special version of the built in macro qt4_wrap_cpp
# It is required since moc'ed files are now included instead of being added to projects directly
# It adds a reverse dependency to solve this
# This has the unfortunate side effect that some files are always rebuilt
# There is probably a cleaner solution than this
include(AddFileDependencies)
macro(fc_wrap_cpp outfiles )
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
SET(ARGN)
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_MOC_EXECUTABLE}
ARGS ${moc_options} ${it} -o ${outfile}
MAIN_DEPENDENCY ${it}
)
SET(${outfiles} ${${outfiles}} ${outfile})
add_file_dependencies(${it} ${outfile})
endforeach(it)
endmacro(fc_wrap_cpp)
MACRO (QT4_ADD_RESOURCES outfiles )
QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
SET(ARGN)
FOREACH (it ${rcc_files})
GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx)
# parse file for dependencies
# all files are absolute paths or relative to the location of the qrc file
FILE(READ "${infile}" _RC_FILE_CONTENTS)
STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
SET(_RC_DEPENDS)
FOREACH(_RC_FILE ${_RC_FILES})
STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
IF(NOT _ABS_PATH_INDICATOR)
SET(_RC_FILE "${rc_path}/${_RC_FILE}")
ENDIF(NOT _ABS_PATH_INDICATOR)
SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
ENDFOREACH(_RC_FILE)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_RCC_EXECUTABLE}
ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile}
DEPENDS ${_RC_DEPENDS})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_ADD_RESOURCES)
MACRO (QT4_WRAP_UI outfiles )
QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
FOREACH (it ${ui_files})
GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_UIC_EXECUTABLE}
ARGS -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_WRAP_UI)
set(QT4_FOUND TRUE)
# SoQt
set(SOQT_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/soqt)
set(SOQT_LIBRARY_RELEASE soqt1.lib)
set(SOQT_LIBRARY_DEBUG soqt1d.lib)
set(SOQT_FOUND TRUE)
# OpenCV
set(OPENCV_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/opencv)
set(OPENCV_LIBRARIES cv.lib cvaux.lib cxcore.lib cxts.lib highgui.lib)
set(OPENCV_FOUND TRUE)
# ODE
set(ODE_INCLUDE_DIRS ${FREECAD_LIBPACK_DIR}/include)
set(ODE_LIBRARIES ode_double.lib)
set(ODE_FOUND TRUE)
# OCC
set(OCC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/OpenCascade)
set(OCC_LIBRARIES
TKFillet
TKMesh
TKernel
TKG2d
TKG3d
TKMath
TKIGES
TKSTL
TKShHealing
TKXSBase
TKBool
TKBO
TKBRep
TKTopAlgo
TKGeomAlgo
TKGeomBase
TKOffset
TKPrim
TKSTEP
TKSTEPBase
TKSTEPAttr
TKHLR
)
set(OCC_LIBRARY_DIR
${FREECAD_LIBPACK_DIR}/lib
)
set(OCC_FOUND TRUE)

323
cMake/UseLibPack7x.cmake Normal file
View File

@@ -0,0 +1,323 @@
# ================================================================================
# == Win32 is default behaviour use the LibPack copied in Source tree ============
# --------------------------------------------------------------------------------
# General includes
link_directories(${FREECAD_LIBPACK_DIR}/lib)
include_directories(${FREECAD_LIBPACK_DIR}/include)
# OpenGL
set(OPENGL_gl_LIBRARY opengl32 glu32)
# Python
set(PYTHON_DEBUG_LIBRARY python26_d.lib)
set(PYTHON_LIBRARY python26.lib)
set(PYTHON_INCLUDE_PATH ${FREECAD_LIBPACK_DIR}/include/python)
set(PYTHON_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/python.exe)
set(PYTHONLIBS_FOUND TRUE)
# XercesC
set(XERCESC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/xercesc)
set(XERCESC_LIBRARIES xerces-c_2.lib)
set(XERCESC_DEBUG_LIBRARIES xerces-c_2D.lib)
set(XERCESC_FOUND TRUE)
# Boost
set(Boost_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/boost)
set(Boost_LIBRARIES
optimized boost_filesystem-vc90-mt-1_39.lib
optimized boost_system-vc90-mt-1_39.lib
optimized boost_graph-vc90-mt-1_39.lib
optimized boost_program_options-vc90-mt-1_39.lib
optimized boost_regex-vc90-mt-1_39.lib
optimized boost_signals-vc90-mt-1_39.lib
optimized boost_thread-vc90-mt-1_39.lib
)
set(Boost_DEBUG_LIBRARIES
debug boost_filesystem-vc90-mt-gd-1_39.lib
debug boost_date_time-vc90-mt-gd-1_39.lib
debug boost_filesystem-vc90-mt-gd-1_39.lib
debug boost_iostreams-vc90-mt-gd-1_39.lib
debug boost_math_c99f-vc90-mt-gd-1_39.lib
debug boost_math_tr1f-vc90-mt-gd-1_39.lib
debug boost_thread-vc90-mt-gd-1_39.lib
debug boost_system-vc90-mt-gd-1_39.lib
debug boost_graph-vc90-mt-gd-1_39.lib
debug boost_program_options-vc90-mt-gd-1_39.lib
debug boost_regex-vc90-mt-gd-1_39.lib
debug boost_signals-vc90-mt-gd-1_39.lib
)
set(Boost_FOUND TRUE)
# Zlib
set(ZLIB_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/zlib)
set(ZLIB_LIBRARIES zdll.lib)
set(ZLIB_FOUND TRUE)
# SMESH
set(SMESH_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/smesh)
set(SMESH_LIBRARIES
StdMeshers.lib
MEFISTO2.lib
SMESH.lib
DriverUNV.lib
SMESHDS.lib
DriverSTL.lib
DriverDAT.lib
Driver.lib
SMDS.lib
)
set(SMESH_FOUND TRUE)
# Coin3D
set(COIN3D_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/coin)
set(COIN3D_LIBRARY_DEBUG coin3d.lib)
set(COIN3D_LIBRARY_RELEASE coin3.lib)
set(COIN3D_FOUND TRUE)
# QT
set(QT_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/QT/
${FREECAD_LIBPACK_DIR}/include/QT/Qt
${FREECAD_LIBPACK_DIR}/include/QT/QtCore
${FREECAD_LIBPACK_DIR}/include/QT/QtGui
${FREECAD_LIBPACK_DIR}/include/QT/QtDesigner
${FREECAD_LIBPACK_DIR}/include/QT/QtSvg
${FREECAD_LIBPACK_DIR}/include/QT/QtNetwork
${FREECAD_LIBPACK_DIR}/include/QT/QtSql
${FREECAD_LIBPACK_DIR}/include/QT/QtTest
${FREECAD_LIBPACK_DIR}/include/QT/QtUiTools
${FREECAD_LIBPACK_DIR}/include/QT/QtXml
${FREECAD_LIBPACK_DIR}/include/QT/QtOpenGl
${FREECAD_LIBPACK_DIR}/include/QT/QtWebKit
)
set(QT_QTCORE_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/QT/
${FREECAD_LIBPACK_DIR}/include/QT/QtCore
)
set(QT_LIBRARIES
optimized QtCore4.lib
optimized QtGui4.lib
optimized QtDesigner4.lib
optimized QtSvg4.lib
optimized QtNetwork4.lib
optimized QtSql4.lib
optimized QtTest4.lib
optimized QtXml4.lib
optimized QtOpenGl4.lib
optimized QtWebKit4.lib
)
set(QT_DEBUG_LIBRARIES
debug QtCored4.lib
debug QtGuid4.lib
debug QtDesignerd4.lib
debug QtSvgd4.lib
debug QtNetworkd4.lib
debug QtSqld4.lib
debug QtTestd4.lib
debug QtXmld4.lib
debug QtOpenGld4.lib
debug QtWebKitd4.lib
)
set(QT_QTCORE_LIBRARY_DEBUG
debug QtCored4.lib
)
set(QT_QTCORE_LIBRARY
optimized QtCore4.lib
)
set(QT_UIC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/uic.exe)
set(QT_MOC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/moc.exe)
set(QT_RCC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/rcc.exe)
set(QT_HELPCOMPILER_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/qhelpgenerator.exe)
set(QT_COLLECTIOMGENERATOR_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/qcollectiongenerator.exe)
MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options)
SET(${_qt4_files})
SET(${_qt4_options})
#SET(_QT4_DOING_OPTIONS FALSE)
FOREACH(_currentArg ${ARGN})
# IF ("${_currentArg}" STREQUAL "OPTIONS")
# SET(_QT4_DOING_OPTIONS TRUE)
# ELSE ("${_currentArg}" STREQUAL "OPTIONS")
# IF(_QT4_DOING_OPTIONS)
# LIST(APPEND ${_qt4_options} "${_currentArg}")
# ELSE(_QT4_DOING_OPTIONS)
LIST(APPEND ${_qt4_files} "${_currentArg}")
# ENDIF(_QT4_DOING_OPTIONS)
# ENDIF ("${_currentArg}" STREQUAL "OPTIONS")
ENDFOREACH(_currentArg)
ENDMACRO (QT4_EXTRACT_OPTIONS)
# macro used to create the names of output files preserving relative dirs
MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile )
STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength)
STRING(LENGTH ${infile} _infileLength)
SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR})
IF(_infileLength GREATER _binlength)
STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile)
IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile})
ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile})
ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
ELSE(_infileLength GREATER _binlength)
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile})
ENDIF(_infileLength GREATER _binlength)
SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}")
STRING(REPLACE ".." "__" _outfile ${_outfile})
GET_FILENAME_COMPONENT(outpath ${_outfile} PATH)
GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE)
FILE(MAKE_DIRECTORY ${outpath})
SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext})
ENDMACRO (QT4_MAKE_OUTPUT_FILE )
MACRO (QT4_WRAP_CPP outfiles )
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
SET(ARGN)
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_MOC_EXECUTABLE}
ARGS ${moc_options} ${it} -o ${outfile}
MAIN_DEPENDENCY ${it}
)
SET(${outfiles} ${${outfiles}} ${outfile})
endforeach(it)
ENDMACRO (QT4_WRAP_CPP)
# This is a special version of the built in macro qt4_wrap_cpp
# It is required since moc'ed files are now included instead of being added to projects directly
# It adds a reverse dependency to solve this
# This has the unfortunate side effect that some files are always rebuilt
# There is probably a cleaner solution than this
include(AddFileDependencies)
macro(fc_wrap_cpp outfiles )
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
SET(ARGN)
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_MOC_EXECUTABLE}
ARGS ${moc_options} ${it} -o ${outfile}
MAIN_DEPENDENCY ${it}
)
SET(${outfiles} ${${outfiles}} ${outfile})
add_file_dependencies(${it} ${outfile})
endforeach(it)
endmacro(fc_wrap_cpp)
MACRO (QT4_ADD_RESOURCES outfiles )
QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
SET(ARGN)
FOREACH (it ${rcc_files})
GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx)
# parse file for dependencies
# all files are absolute paths or relative to the location of the qrc file
FILE(READ "${infile}" _RC_FILE_CONTENTS)
STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
SET(_RC_DEPENDS)
FOREACH(_RC_FILE ${_RC_FILES})
STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
IF(NOT _ABS_PATH_INDICATOR)
SET(_RC_FILE "${rc_path}/${_RC_FILE}")
ENDIF(NOT _ABS_PATH_INDICATOR)
SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
ENDFOREACH(_RC_FILE)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_RCC_EXECUTABLE}
ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile}
DEPENDS ${_RC_DEPENDS})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_ADD_RESOURCES)
MACRO (QT4_WRAP_UI outfiles )
QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
FOREACH (it ${ui_files})
GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_UIC_EXECUTABLE}
ARGS -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_WRAP_UI)
set(QT4_FOUND TRUE)
# SoQt
set(SOQT_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/soqt)
set(SOQT_LIBRARY_RELEASE soqt1.lib)
set(SOQT_LIBRARY_DEBUG soqt1d.lib)
set(SOQT_FOUND TRUE)
# OpenCV
set(OPENCV_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/opencv)
set(OPENCV_LIBRARIES cv.lib cvaux.lib cxcore.lib cxts.lib highgui.lib)
set(OPENCV_FOUND TRUE)
# OCC
set(OCC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/OpenCascade)
set(OCC_LIBRARIES
TKFillet
TKMesh
TKernel
TKG2d
TKG3d
TKMath
TKIGES
TKSTL
TKShHealing
TKXSBase
TKBool
TKBO
TKBRep
TKTopAlgo
TKGeomAlgo
TKGeomBase
TKOffset
TKPrim
TKSTEP
TKSTEPBase
TKSTEPAttr
TKHLR
)
set(OCC_LIBRARY_DIR
${FREECAD_LIBPACK_DIR}/lib
)
set(OCC_FOUND TRUE)
SET(EIGEN2_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/eigen2)
set(EIGEN2_FOUND TRUE)
SET(EIGEN3_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/eigen3)
set(EIGEN3_FOUND TRUE)

View File

@@ -0,0 +1,349 @@
# ================================================================================
# == Win32 is default behaviour use the LibPack copied in Source tree ============
# --------------------------------------------------------------------------------
# General includes
link_directories(${FREECAD_LIBPACK_DIR}/lib)
include_directories(${FREECAD_LIBPACK_DIR}/include)
# OpenGL
set(OPENGL_gl_LIBRARY opengl32 glu32)
# Python
set(PYTHON_DEBUG_LIBRARY python26_d.lib)
set(PYTHON_LIBRARY python26.lib)
set(PYTHON_INCLUDE_PATH ${FREECAD_LIBPACK_DIR}/include/Python-2.6.4)
set(PYTHON_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/python.exe)
set(PYTHONLIBS_FOUND TRUE)
# XercesC
set(XERCESC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/xerces-c-3.1.0)
set(XERCESC_LIBRARIES xerces-c_3.lib)
set(XERCESC_DEBUG_LIBRARIES xerces-c_3D.lib)
set(XERCESC_FOUND TRUE)
# Boost
set(Boost_INCLUDE_DIRS ${FREECAD_LIBPACK_DIR}/include/boost-1_41)
set(Boost_LIBRARIES
optimized boost_filesystem-vc90-mt-1_41.lib
optimized boost_system-vc90-mt-1_41.lib
optimized boost_graph-vc90-mt-1_41.lib
optimized boost_program_options-vc90-mt-1_41.lib
optimized boost_regex-vc90-mt-1_41.lib
optimized boost_signals-vc90-mt-1_41.lib
optimized boost_thread-vc90-mt-1_41.lib
)
set(Boost_DEBUG_LIBRARIES
debug boost_filesystem-vc90-mt-gd-1_41.lib
debug boost_system-vc90-mt-gd-1_41.lib
debug boost_graph-vc90-mt-gd-1_41.lib
debug boost_program_options-vc90-mt-gd-1_41.lib
debug boost_regex-vc90-mt-gd-1_41.lib
debug boost_signals-vc90-mt-gd-1_41.lib
debug boost_thread-vc90-mt-gd-1_41.lib
)
set(Boost_FOUND TRUE)
# Zlib
set(ZLIB_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/zlib-1.2.3)
set(ZLIB_LIBRARIES zdll.lib)
set(ZLIB_FOUND TRUE)
# SMESH
set(SMESH_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/smesh)
set(SMESH_LIBRARIES
StdMeshers.lib
MEFISTO2.lib
SMESH.lib
DriverUNV.lib
SMESHDS.lib
DriverSTL.lib
DriverDAT.lib
Driver.lib
SMDS.lib
)
set(SMESH_FOUND TRUE)
# Coin3D
find_path(COIN3D_INCLUDE_DIR Inventor/So.h
${FREECAD_LIBPACK_DIR}/include/Coin-2.4.5
)
find_path(COIN3D_INCLUDE_DIR Inventor/So.h
${FREECAD_LIBPACK_DIR}/include/Coin-3.1.3
)
find_library(COIN3D_LIBRARY_RELEASE coin2
"${FREECAD_LIBPACK_DIR}/lib"
)
find_library(COIN3D_LIBRARY_DEBUG coin2d
"${FREECAD_LIBPACK_DIR}/lib"
)
find_library(COIN3D_LIBRARY_RELEASE coin3
"${FREECAD_LIBPACK_DIR}/lib"
)
find_library(COIN3D_LIBRARY_DEBUG coin3d
"${FREECAD_LIBPACK_DIR}/lib"
)
set(COIN3D_FOUND TRUE)
# QT
set(QT_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/Qt
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtCore
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtGui
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtDesigner
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtSvg
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtNetwork
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtSql
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtTest
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtUiTools
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtXml
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtOpenGl
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtWebKit
)
set(QT_QTCORE_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/QtCore
)
set(QT_QT3SUPPORT_INCLUDE_DIR
${FREECAD_LIBPACK_DIR}/include/Qt-4.5.3/Qt3Support
)
set(QT_LIBRARIES
optimized QtCore4.lib
optimized QtGui4.lib
optimized QtDesigner4.lib
optimized QtSvg4.lib
optimized QtNetwork4.lib
optimized QtSql4.lib
optimized QtTest4.lib
optimized QtXml4.lib
optimized QtOpenGl4.lib
optimized QtWebKit4.lib
)
set(QT_DEBUG_LIBRARIES
debug QtCored4.lib
debug QtGuid4.lib
debug QtDesignerd4.lib
debug QtSvgd4.lib
debug QtNetworkd4.lib
debug QtSqld4.lib
debug QtTestd4.lib
debug QtXmld4.lib
debug QtOpenGld4.lib
debug QtWebKitd4.lib
)
set(QT_QTCORE_LIBRARY_DEBUG
debug QtCored4.lib
)
set(QT_QTCORE_LIBRARY
optimized QtCore4.lib
)
set(QT_QT3SUPPORT_LIBRARY_DEBUG
debug Qt3Supportd4.lib
)
set(QT_QT3SUPPORT_LIBRARY
optimized Qt3Support4.lib
)
set(QT_UIC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/uic.exe)
set(QT_MOC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/moc.exe)
set(QT_RCC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/rcc.exe)
set(QT_HELPCOMPILER_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/qhelpgenerator.exe)
set(QT_COLLECTIOMGENERATOR_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/qcollectiongenerator.exe)
MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options)
SET(${_qt4_files})
SET(${_qt4_options})
#SET(_QT4_DOING_OPTIONS FALSE)
FOREACH(_currentArg ${ARGN})
# IF ("${_currentArg}" STREQUAL "OPTIONS")
# SET(_QT4_DOING_OPTIONS TRUE)
# ELSE ("${_currentArg}" STREQUAL "OPTIONS")
# IF(_QT4_DOING_OPTIONS)
# LIST(APPEND ${_qt4_options} "${_currentArg}")
# ELSE(_QT4_DOING_OPTIONS)
LIST(APPEND ${_qt4_files} "${_currentArg}")
# ENDIF(_QT4_DOING_OPTIONS)
# ENDIF ("${_currentArg}" STREQUAL "OPTIONS")
ENDFOREACH(_currentArg)
ENDMACRO (QT4_EXTRACT_OPTIONS)
# macro used to create the names of output files preserving relative dirs
MACRO (QT4_MAKE_OUTPUT_FILE infile prefix ext outfile )
STRING(LENGTH ${CMAKE_CURRENT_BINARY_DIR} _binlength)
STRING(LENGTH ${infile} _infileLength)
SET(_checkinfile ${CMAKE_CURRENT_SOURCE_DIR})
IF(_infileLength GREATER _binlength)
STRING(SUBSTRING "${infile}" 0 ${_binlength} _checkinfile)
IF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_BINARY_DIR} ${infile})
ELSE(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile})
ENDIF(_checkinfile STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
ELSE(_infileLength GREATER _binlength)
FILE(RELATIVE_PATH rel ${CMAKE_CURRENT_SOURCE_DIR} ${infile})
ENDIF(_infileLength GREATER _binlength)
SET(_outfile "${CMAKE_CURRENT_BINARY_DIR}/${rel}")
STRING(REPLACE ".." "__" _outfile ${_outfile})
GET_FILENAME_COMPONENT(outpath ${_outfile} PATH)
GET_FILENAME_COMPONENT(_outfile ${_outfile} NAME_WE)
FILE(MAKE_DIRECTORY ${outpath})
SET(${outfile} ${outpath}/${prefix}${_outfile}.${ext})
ENDMACRO (QT4_MAKE_OUTPUT_FILE )
MACRO (QT4_WRAP_CPP outfiles )
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
SET(ARGN)
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_MOC_EXECUTABLE}
ARGS ${moc_options} ${it} -o ${outfile}
MAIN_DEPENDENCY ${it}
)
SET(${outfiles} ${${outfiles}} ${outfile})
endforeach(it)
ENDMACRO (QT4_WRAP_CPP)
# This is a special version of the built in macro qt4_wrap_cpp
# It is required since moc'ed files are now included instead of being added to projects directly
# It adds a reverse dependency to solve this
# This has the unfortunate side effect that some files are always rebuilt
# There is probably a cleaner solution than this
include(AddFileDependencies)
macro(fc_wrap_cpp outfiles )
QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
SET(ARGN)
foreach(it ${moc_files})
get_filename_component(it ${it} ABSOLUTE)
QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_MOC_EXECUTABLE}
ARGS ${moc_options} ${it} -o ${outfile}
MAIN_DEPENDENCY ${it}
)
SET(${outfiles} ${${outfiles}} ${outfile})
add_file_dependencies(${it} ${outfile})
endforeach(it)
endmacro(fc_wrap_cpp)
MACRO (QT4_ADD_RESOURCES outfiles )
QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
SET(ARGN)
FOREACH (it ${rcc_files})
GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx)
# parse file for dependencies
# all files are absolute paths or relative to the location of the qrc file
FILE(READ "${infile}" _RC_FILE_CONTENTS)
STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
SET(_RC_DEPENDS)
FOREACH(_RC_FILE ${_RC_FILES})
STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
IF(NOT _ABS_PATH_INDICATOR)
SET(_RC_FILE "${rc_path}/${_RC_FILE}")
ENDIF(NOT _ABS_PATH_INDICATOR)
SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
ENDFOREACH(_RC_FILE)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_RCC_EXECUTABLE}
ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile}
DEPENDS ${_RC_DEPENDS})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_ADD_RESOURCES)
MACRO (QT4_WRAP_UI outfiles )
QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
FOREACH (it ${ui_files})
GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h)
ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
COMMAND ${QT_UIC_EXECUTABLE}
ARGS -o ${outfile} ${infile}
MAIN_DEPENDENCY ${infile})
SET(${outfiles} ${${outfiles}} ${outfile})
ENDFOREACH (it)
ENDMACRO (QT4_WRAP_UI)
set(QT4_FOUND TRUE)
# SoQt
set(SOQT_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/SoQt-1.4.1)
set(SOQT_LIBRARY_RELEASE soqt1.lib)
set(SOQT_LIBRARY_DEBUG soqt1d.lib)
set(SOQT_FOUND TRUE)
# OpenCV
set(OPENCV_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/opencv)
set(OPENCV_LIBRARIES cv.lib cvaux.lib cxcore.lib cxts.lib highgui.lib)
set(OPENCV_FOUND TRUE)
# OCC
set(OCC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/OpenCascade-6.3.0)
set(OCC_LIBRARIES
TKFillet
TKMesh
TKernel
TKG2d
TKG3d
TKMath
TKIGES
TKSTL
TKShHealing
TKXSBase
TKBool
TKBO
TKBRep
TKTopAlgo
TKGeomAlgo
TKGeomBase
TKOffset
TKPrim
TKSTEP
TKSTEPBase
TKSTEPAttr
TKHLR
)
set(OCC_LIBRARY_DIR
${FREECAD_LIBPACK_DIR}/lib
)
set(OCC_FOUND TRUE)
set(EIGEN2_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/eigen2)
set(EIGEN2_FOUND TRUE)
set(EIGEN3_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/eigen3)
set(EIGEN3_FOUND TRUE)
set(ODE_INCLUDE_DIRS ${FREECAD_LIBPACK_DIR}/include/ode-0.11.1)
set(ODE_LIBRARIES ${FREECAD_LIBPACK_DIR}/lib/ode_double.lib)
set(ODE_FOUND TRUE)

145
config.h.cmake Normal file
View File

@@ -0,0 +1,145 @@
/* config.h. Generated from config.h.cmake by cmake. */
/* Define to 1 if you have the <bits/sigset.h> header file. */
#cmakedefine HAVE_BITS_SIGSET_H
/* Define to 1 if you have the <bstring.h> header file. */
#cmakedefine HAVE_BSTRING_H
/* Define to 1 if you have the <dlfcn.h> header file. */
#cmakedefine HAVE_DLFCN_H
/* Define to 1 if you have the <float.h> header file. */
#cmakedefine HAVE_FLOAT_H
/* Define to 1 if you have the <fstream> header file. */
#cmakedefine HAVE_FSTREAM
/* Define to use GetEnvironmentVariable() instead of getenv() */
#cmakedefine HAVE_GETENVIRONMENTVARIABLE
/* define if the GL header should be included as GL/gl.h */
#cmakedefine HAVE_GL_GL_H
/* Define to 1 if you have the <inttypes.h> header file. */
#cmakedefine HAVE_INTTYPES_H
/* Define to 1 if you have the <iomanip> header file. */
#cmakedefine HAVE_IOMANIP
/* Define to 1 if you have the <iomanip.h> header file. */
#cmakedefine HAVE_IOMANIP_H
/* Define to 1 if you have the <ios> header file. */
#cmakedefine HAVE_IOS
/* Define to 1 if you have the <iostream> header file. */
#cmakedefine HAVE_IOSTREAM
/* Define to 1 if you have the <istream> header file. */
#cmakedefine HAVE_ISTREAM
/* Define to 1 if you have the <libc.h> header file. */
#cmakedefine HAVE_LIBC_H
/* Define to 1 if you have the <limits.h> header file. */
#cmakedefine HAVE_LIMITS_H
/* Define to 1 if you have the <memory.h> header file. */
#cmakedefine HAVE_MEMORY_H
/* define if the compiler implements namespaces */
#cmakedefine HAVE_NAMESPACES
/* Define to 1 if you have the <ostream> header file. */
#cmakedefine HAVE_OSTREAM
/* Define this to 1 if operator==(QGLFormat&, QGLFormat&) is available */
#cmakedefine HAVE_QGLFORMAT_EQ_OP
/* Define this to 1 if QGLFormat::setOverlay() is available */
#cmakedefine HAVE_QGLFORMAT_SETOVERLAY
/* Define this to 1 if QGLWidget::setAutoBufferSwap() is available */
#cmakedefine HAVE_QGLWIDGET_SETAUTOBUFFERSWAP
/* Define this if Qt::Keypad is available */
#cmakedefine HAVE_QT_KEYPAD_DEFINE
/* Define this if QWidget::showFullScreen() is available */
#cmakedefine HAVE_QWIDGET_SHOWFULLSCREEN
/* Define to 1 if you have the <siginfo.h> header file. */
#cmakedefine HAVE_SIGINFO_H
/* Define to 1 if you have the <sstream> header file. */
#cmakedefine HAVE_SSTREAM
/* Define to 1 if you have the <stdint.h> header file. */
#cmakedefine HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#cmakedefine HAVE_STDLIB_H
/* define if the compiler has std compliant iostream library */
#cmakedefine HAVE_STD_IOSTREAM
/* Define to 1 if you have the <strings.h> header file. */
#cmakedefine HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#cmakedefine HAVE_STRING_H
/* Define to 1 if you have the <sys/dir.h> header file. */
#cmakedefine HAVE_SYS_DIR_H
/* Define to 1 if you have the <sys/filio.h> header file. */
#cmakedefine HAVE_SYS_FILIO_H
/* Define to 1 if you have the <sys/mman.h> header file. */
#cmakedefine HAVE_SYS_MMAN_H
/* Define to 1 if you have the <sys/select.h> header file. */
#cmakedefine HAVE_SYS_SELECT_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#cmakedefine HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#cmakedefine HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#cmakedefine HAVE_UNISTD_H
/* Define to 1 if you have the <values.h> header file. */
#cmakedefine HAVE_VALUES_H
/* Name of package */
#define PACKAGE "FreeCAD"
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "wmayer@users.sourceforge.net"
/* Define to the full name of this package. */
#define PACKAGE_NAME "FreeCAD"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "FreeCAD ${FREECAD_VERSION}"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "FreeCAD"
/* Define to the version of this package. */
#define PACKAGE_VERSION "${FREECAD_VERSION}"
/* Define to 1 if you have the ANSI C header files. */
#cmakedefine STDC_HEADERS
/* Define to 1 to build zipios++ sources with iostream. */
#cmakedefine USE_STD_IOSTREAM
/* Version number of package */
#define VERSION "${FREECAD_VERSION}"
/* Define to 1 if the X Window System is missing or not being used. */
/* #cmakedefine X_DISPLAY_MISSING */

1063
configure.ac Normal file

File diff suppressed because it is too large Load Diff

486
copying.lib Normal file
View File

@@ -0,0 +1,486 @@
NOTE! The LGPL below is copyrighted by the Free Software Foundation, but
the instance of code that it refers to (the FreeCAD libraries) are copyrighted
by the authors who actually wrote it.
---------------------------------------------------------------------------
GNU LIBRARY GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1991 Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston, MA 02111-1307, USA.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the library GPL. It is
numbered 2 because it goes with version 2 of the ordinary GPL.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Library General Public License, applies to some
specially designated Free Software Foundation software, and to any
other libraries whose authors decide to use it. You can use it for
your libraries, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if
you distribute copies of the library, or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link a program with the library, you must provide
complete object files to the recipients so that they can relink them
with the library, after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
Our method of protecting your rights has two steps: (1) copyright
the library, and (2) offer you this license which gives you legal
permission to copy, distribute and/or modify the library.
Also, for each distributor's protection, we want to make certain
that everyone understands that there is no warranty for this free
library. If the library is modified by someone else and passed on, we
want its recipients to know that what they have is not the original
version, so that any problems introduced by others will not reflect on
the original authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that companies distributing free
software will individually obtain patent licenses, thus in effect
transforming the program into proprietary software. To prevent this,
we have made it clear that any patent must be licensed for everyone's
free use or not licensed at all.
Most GNU software, including some libraries, is covered by the ordinary
GNU General Public License, which was designed for utility programs. This
license, the GNU Library General Public License, applies to certain
designated libraries. This license is quite different from the ordinary
one; be sure to read it in full, and don't assume that anything in it is
the same as in the ordinary license.
The reason we have a separate public license for some libraries is that
they blur the distinction we usually make between modifying or adding to a
program and simply using it. Linking a program with a library, without
changing the library, is in some sense simply using the library, and is
analogous to running a utility program or application program. However, in
a textual and legal sense, the linked executable is a combined work, a
derivative of the original library, and the ordinary General Public License
treats it as such.
Because of this blurred distinction, using the ordinary General
Public License for libraries did not effectively promote software
sharing, because most developers did not use the libraries. We
concluded that weaker conditions might promote sharing better.
However, unrestricted linking of non-free programs would deprive the
users of those programs of all benefit from the free status of the
libraries themselves. This Library General Public License is intended to
permit developers of non-free programs to use free libraries, while
preserving your freedom as a user of such programs to change the free
libraries that are incorporated in them. (We have not seen how to achieve
this as regards changes in header files, but we have achieved it as regards
changes in the actual functions of the Library.) The hope is that this
will lead to faster development of free libraries.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, while the latter only
works together with the library.
Note that it is possible for a library to be covered by the ordinary
General Public License rather than by this special one.
GNU LIBRARY GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library which
contains a notice placed by the copyright holder or other authorized
party saying it may be distributed under the terms of this Library
General Public License (also called "this License"). Each licensee is
addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also compile or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
c) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
d) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the source code distributed need not include anything that is normally
distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Library General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This library is free software; 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; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Ty Coon>, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!

1
data/CMakeLists.txt Normal file
View File

@@ -0,0 +1 @@
add_subdirectory(examples)

25
data/License.txt Normal file
View File

@@ -0,0 +1,25 @@
The files:
DrawingExample.FCStd
PartDesignExample.FCStd
RobotExample.FCStd
Schenkel.stp
are
(c) 2011 Juergen Riegel (juergen.riegel@web.de)
licensed under:
Creative Commons Attribution Share Alike
The files:
EngineBlock.FCStd
are
(c) 2011 Werner Mayer (wmayer@users.sourceforge.net)
licensed under:
Creative Commons Attribution Share Alike

11
data/Makefile.am Normal file
View File

@@ -0,0 +1,11 @@
SUBDIRS=examples
# Change data dir from default
datadir = @datadir@/data
data_DATA = \
License.txt
EXTRA_DIST = \
$(data_DATA) \
CMakeLists.txt

View File

@@ -0,0 +1,21 @@
SET(Examples_Files
Schenkel.stp
DrawingExample.FCStd
PartDesignExample.FCStd
RobotExample.FCStd
)
ADD_CUSTOM_TARGET(Example_data ALL
SOURCES ${Examples_Files}
)
fc_copy_sources("data/examples" "Examples" ${Examples_Files})
install(
FILES
${Examples_Files}
DESTINATION
data/examples
)

Binary file not shown.

Binary file not shown.

14
data/examples/Makefile.am Normal file
View File

@@ -0,0 +1,14 @@
# Change data dir from default
datadir = @datadir@/data/examples
data_DATA = \
DrawingExample.FCStd \
EngineBlock.FCStd \
PartDesignExample.FCStd \
RobotExample.FCStd \
Schenkel.stp
EXTRA_DIST = \
$(data_DATA) \
CMakeLists.txt

Binary file not shown.

Binary file not shown.

11782
data/examples/Schenkel.stp Normal file

File diff suppressed because it is too large Load Diff

111
mkinstalldirs Normal file
View File

@@ -0,0 +1,111 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain
errstatus=0
dirmode=""
usage="\
Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage" 1>&2
exit 0
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file
do
if test -d "$file"; then
shift
else
break
fi
done
case $# in
0) exit 0 ;;
esac
case $dirmode in
'')
if mkdir -p -- . 2>/dev/null; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
fi
;;
*)
if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
fi
;;
esac
for file
do
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
shift
pathcomp=
for d
do
pathcomp="$pathcomp$d"
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp="$pathcomp/"
done
done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# End:
# mkinstalldirs ends here

227
package/debian/changelog Normal file
View File

@@ -0,0 +1,227 @@
freecad (0.11.3729.dfsg-2) unstable; urgency=low
* Add gfortran and libopencascade-visualization-dev to BD
to fix FTBFS (closes: #622694)
* Add libqtwebkit-dev to BD (closes: #618241)
* Delete quilt from BD and corresponding changes in rules.
* Add description to freecad-occ650.patch
* Delete encoding string from .desktop
* Fix some spelling errors, pointed out by lintian.
-- Anton Gladky <gladky.anton@gmail.com> Thu, 14 Apr 2011 10:23:25 +0100
freecad (0.11.3729.dfsg-1) unstable; urgency=low
[ Denis Barbier ]
* Merge OpenCASCADE 6.5.0 compatibility patch (closes: #617545).
[ Adam C. Powell, IV ]
* New upstream (closes: #622213, #618241).
* Changed to source format 3.0 (quilt).
* Added patch target which forces autotools to run, and automake and autoconf
are now in Build-Depends (closes: #607181).
* Set aside src/Build/Version.h to prevent build problems.
* Does not install .la files (closes: #621298).
* Boost 1.46 compatibility patch (closes: #621877).
* Set aside files which autotools modifies so clean works.
* Added libtool to Build-Depends (thanks: PICCA Frédéric-Emmanuel).
* Bumped Standards-Version, no changes needed.
-- "Adam C. Powell, IV" <hazelsct@debian.org> Tue, 12 Apr 2011 23:40:30 -0400
freecad (0.10.3247.dfsg-2) unstable; urgency=low
* control:
- Update to standars-version 3.9.0.
- Remove libblas-dev, libatlas-dev from build-deps.
* Add debian/shlibs.local file containing the the correct binary dep
to libsoqt4-20 (closes: #575239).
* copyright: Add a verbatim copy of Tiddlywiki BSD license. Fixes
the lintian warning copyright-refers-to-deprecated-bsd-license-file.
* Add kFreeBSD portability fixes. Thanks to Petr Salinger
<Petr.Salinger@seznam.cz> for the patch (closes: #592461).
-- Teemu Ikonen <tpikonen@gmail.com> Wed, 18 Aug 2010 19:34:36 +0200
freecad (0.10.3247.dfsg-1) unstable; urgency=low
* New upstream version (closes: #582627)
* Add debian/source/format file with contents "1.0".
* Use freecad.xpm as icon in menu and desktop files.
* copyright: Add licensing information for new files in this release.
* src/Base/Makefile.in, src/Gui/Makefile.in: Do not remove *.tab.c files
in make distclean target.
* control:
- Add build-dep to libeigen2-dev.
- Update to standards-version 3.8.4.
-- Teemu Ikonen <tpikonen@gmail.com> Mon, 05 Jul 2010 15:07:49 +0200
freecad (0.9.2646.5.dfsg-1) unstable; urgency=low
* Add 'dfsg' extension to upstream version, upstream sources are unchanged.
* Remove libgl1-mesa-dev build-dep, rely on libcoin to pull in GL libraries.
* Change build-dep libatlas-headers to libatlas-dev (closes: #577309).
-- Teemu Ikonen <tpikonen@gmail.com> Fri, 14 May 2010 17:20:35 +0200
freecad (0.9.2646.5-1) unstable; urgency=low
* New upstream version (closes: #561696).
* Added swig to Build-Depends (closes: #563523, #563772).
* Removed python-opencv from Build-Depends and Recommends (closes: #560768).
-- Adam C. Powell, IV <hazelsct@debian.org> Mon, 11 Jan 2010 08:48:33 -0500
freecad (0.9.2646.4-1) unstable; urgency=low
* New upstream version (closes: #559849, #559846).
-- Adam C. Powell, IV <hazelsct@debian.org> Fri, 11 Dec 2009 20:21:32 -0500
freecad (0.9.2646.3-1) unstable; urgency=low
* New upstream version. Removes TiddlySaver.jar, fixes help problems.
-- Teemu Ikonen <tpikonen@gmail.com> Thu, 03 Dec 2009 19:39:27 +0100
freecad (0.9.2646-1) unstable; urgency=low
[ Werner Mayer ]
* New upstream release
* In-source copy of PyCXX has been dropped (closes: #547936)
* In-source copy of zipios++ has been dropped (closes: #547941)
* Change build-dependency on python2.5-dev to python-dev
* Add freecad-doc binary package
* Remove Suggestion of a chm viewer, suggest freecad-doc instead
[ Teemu Ikonen ]
* Add override to dh_compress
* Add versioned build-deb to debhelper (>= 7.0.50)
* Add build-deps to libzipios++-dev and python-cxx-dev.
-- Teemu Ikonen <tpikonen@gmail.com> Tue, 17 Nov 2009 14:22:00 +0100
freecad (0.8.2237-2) unstable; urgency=low
* Added libboost-python-dev to Build-Depends (closes: #549738).
* Added myself to uploaders list.
* Bumped Standards-Version.
-- Adam C. Powell, IV <hazelsct@debian.org> Thu, 12 Nov 2009 12:02:42 -0500
freecad (0.8.2237-1) unstable; urgency=low
* New Upstream release
-- Teemu Ikonen <tpikonen@gmail.com> Thu, 16 Jul 2009 18:37:41 +0200
freecad (0.7.1658-1) UNRELEASED; urgency=low
* New upstream release
-- Teemu Ikonen <tpikonen@gmail.com> Mon, 20 Oct 2008 15:35:58 +0200
freecad (0.7.1514-1) UNRELEASED; urgency=low
* New upstream version
* Add more stuff to the copyright file
* control: add build-dep to python-central
-- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low
* Package for Ubuntu 8.04 (Hardy Heron)
-- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low
* Backport to Ubuntu 7.10 (Gutsy Gibbon)
-- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low
* Backport to Ubuntu 7.04 (Feisty Fawn)
-- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
freecad (0.7.1350-1) UNRELEASED; urgency=low
* New upstream release from sf.net
* Import to debian-science repository at git.debian.org
* control:
- Update to standards-version 3.7.3
- Add Vcs-* fields pointing to git.debian.org
- Improve descriptions
* Convert copyright to (pseudo) machine readable format, audit source
* Fix categories in .desktop file
* Change Section to Science/Engineering in .doc-base and menu files
* rules: do not ignore errors on clean target, add dh_desktop call
-- Teemu Ikonen <tpikonen@gmail.com> Tue, 05 Aug 2008 18:58:07 +0200
freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low
* New package with fixed self-dependency problem
-- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low
* New debian package for Feisty
-- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
freecad (0.7.1344-1) UNRELEASED; urgency=low
* Write patch file to make builds with OpenCASCADE libs inside but with no
dependency to libopencascade6.2
-- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
freecad (0.7.1343-1) UNRELEASED; urgency=low
* Embed required OpenCASCADE libs into this package as long as no official
Debian package is available
-- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
freecad (0.7.1342-1) UNRELEASED; urgency=low
* Switch to new versioning scheme of OpenCASCADE packages
-- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
freecad (0.7.1316-1) UNRELEASED; urgency=low
* Support of pivy (Python binding for Coin/SoQt)
* Support of PyQt4
* General support of SWIG modules
-- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
freecad (0.7.1031-1) UNRELEASED; urgency=low
* Qt4 port finished
* Support of Python binding for Qt4
* Support of Python binding for Coin
* Support of entirely in Python written modules
* Added support of model driven architecture for Python binding
* Use boost's signal/slot mechanism to update data
-- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
freecad (0.7.645-1) UNRELEASED; urgency=low
* Qt4 port started
-- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
freecad (0.6.472-1) UNRELEASED; urgency=low
* Initial Release
-- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200

1
package/debian/compat Normal file
View File

@@ -0,0 +1 @@
7

66
package/debian/control Normal file
View File

@@ -0,0 +1,66 @@
Source: freecad
Section: science
Priority: extra
Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
Uploaders: Teemu Ikonen <tpikonen@gmail.com>, "Adam C. Powell, IV" <hazelsct@debian.org>, Anton Gladky <gladky.anton@gmail.com>
Vcs-Browser: http://git.debian.org/?p=debian-science/packages/freecad.git
Vcs-Git: git://git.debian.org/git/debian-science/packages/freecad.git
Homepage: http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
Build-Depends: debhelper (>= 7.0.50~), autotools-dev, libtool, automake,
autoconf, libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
libboost-python-dev, python-dev, python-support,
libqt4-dev, libxt-dev, libxext-dev, libxmu-dev, libxi-dev, libx11-dev,
libcoin60-dev, libsoqt4-dev (>= 1.4.2~svn20090224), libeigen2-dev, libeigen3-dev, libgl1-mesa-dev,
zlib1g-dev, libxerces-c2-dev, libopencascade-foundation-dev, libopencascade-modeling-dev,
libopencascade-visualization-dev, python-cxx-dev, libswscale-dev,
libzipios++-dev, swig, gfortran, libqtwebkit-dev
Standards-Version: 3.9.2
Package: freecad
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Recommends: python-pivy
Suggests: freecad-doc
Description: Extensible Open Source CAx program (alpha)
FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
It features some key concepts like macro recording, workbenches, ability
to run as a server and dynamically loadable application extensions and
it is designed to be platform independent.
.
Currently, FreeCAD can import and display CAD models in IGES, STEP, and
BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
Editing and modeling features are currently somewhat limited.
Package: freecad-dev
Architecture: any
Section: libdevel
Depends: ${shlibs:Depends}, ${misc:Depends}, freecad (= ${binary:Version})
Description: FreeCAD development files
FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
It features some key concepts like macro recording, workbenches, ability
to run as a server and dynamically loadable application extensions and
it is designed to be platform independent.
For more details see http://sourceforge.net/projects/free-cad
.
This package contains headers and symlinks necessary to
develop modules for FreeCAD.
Package: freecad-doc
Architecture: all
Section: doc
Depends: ${misc:Depends}, qt4-dev-tools
Description: FreeCAD documentation
FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
It features some key concepts like macro recording, workbenches, ability
to run as a server and dynamically loadable application extensions and
it is designed to be platform independent.
For more details see http://sourceforge.net/projects/free-cad
.
This package contains the FreeCAD documentation.
.
The documentation is provided in Qt's new help format;
the new help format version can be viewed in conjunction with the Qt Assistant
found in the qt4-dev-tools package.

275
package/debian/copyright Normal file
View File

@@ -0,0 +1,275 @@
Format-Specification: http://dep.debian.net/deps/dep5/
Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
X-Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
X-Packaged-Date: 2006-09-26_16:55:15+02:00
Source: http://sourceforge.net/projects/free-cad
Files: *
Copyright: 2001-2009 Jürgen Riegel <juergen.riegel@web.de>,
Werner Mayer <wmayer@users.sourceforge.net>
License: LGPL-2+
This package is free software; 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; either
version 2 of the License, or (at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
.
You should have received a copy of the GNU Lesser General Public
License along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
.
On Debian systems, the complete text of the GNU Lesser General Public
License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
Files: src/3rdParty/boost/numeric/bindings/*
Copyright: 2002-2008 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
Andreas Kloeckner, Jeremy Conlin, Thomas Klimpel, Fabien Dekeyser,
Quoc-Cuong Pham, Si-Lab b.v.b.a., Joerg Walter
License: other-boost-1.0
Boost Software License - Version 1.0 - August 17th, 2003
.
Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:
.
The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
Files: src/3rdParty/boost/numeric/bindings/lapack/lapack.hpp,
src/3rdParty/boost/numeric/bindings/traits/std_valarray.hpp
Copyright: 2003 Toon Knapen, Kresimir Fresl, Karl Meerbergen
License: other
* Permission to copy, modify, use and distribute this software
* for any non-commercial or commercial purpose is granted provided
* that this license appear on all copies of the software source code.
*
* Authors assume no responsibility whatsoever for its use and makes
* no guarantees about its quality, correctness or reliability.
*
* KF acknowledges the support of the Faculty of Civil Engineering,
* University of Zagreb, Croatia.
Files: src/Base/Base64.*
Copyright: 2004-2008 Rene Nyffenegger <rene.nyffenegger@adp-gmbh.ch>
License: other
This source code is provided 'as-is', without any express or implied
warranty. In no event will the author be held liable for any damages
arising from the use of this software.
.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
.
1. The origin of this source code must not be misrepresented; you must not
claim that you wrote the original source code. If you use this source code
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original source code.
.
3. This notice may not be removed or altered from any source distribution.
Files: src/Base/fdstream.hpp
Copyright: 2001 Nicolai M. Josuttis
License: other
Permission to copy, use, modify, sell and distribute this software
is granted provided this copyright notice appears in all copies.
This software is provided "as is" without express or implied
warranty, and with no claim as to its suitability for any purpose.
Files: src/Base/gzstream.*
Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
License: LGPL-2.1+
Files: src/Base/PyTools.*
Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
License: other
Permission to use, copy, modify, and distribute this software
for any purpose and without fee is hereby granted. This software
is provided on an as is basis, without warranties of any kind.
Files: src/Doc/Start_Page.html
Copyright: 2004-2009 UnaMesa Association
License: BSD
Copyright (c) UnaMesa Association 2004-2009
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
.
Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
.
Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
.
Neither the name of the UnaMesa Association nor the names of its
contributors may be used to endorse or promote products derived from this
software without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS
IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Files: src/Doc/Start_Page.html
Copyright: 2009 John Resig
License: GPL-2 or MIT
On Debian systems, the complete text of the GNU General Public License
version 2 can be found in '/usr/share/common-licenses/GPL-2'.
License: MIT
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
.
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Files: src/Doc/Start_Page.html
Copyright: 2009 The Dojo Foundation, http://sizzlejs.com/
License: GPL-2 or MIT or BSD
Files: src/Gui/iisTaskPanel/src/*
Copyright: http://www.ii-system.com
License: LGPL
Files: src/Mod/Draft/*
Copyright: Yorik van Havre, Werner Mayer, Martin Burbaum
License: GPL-2+
Files: src/Mod/Draft/draftlibs/dxf*
Copyright: 2005-2008 Ed Blake, Remigiusz Fiedler, Stani Michiels
License: GPL-2+
Files: src/Mod/Draft/WorkingPlane.py
Copyright: 2009-2010 Ken Cline <cline@frii.com>
License: GPL-2+
Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
src/Mod/Mesh/App/Core/*
Copyright: 2005 Imetric 3D GmbH
License: LGPL-2+
Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
License: LGPL-2+
Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*
Copyright: 2005 Berthold Grupp
License: LGPL-2+
Files: src/Mod/Mesh/BuildRegularGeoms.py
Copyright: 2005 Berthold Grupp
License: LGPL
Files: src/Mod/Image/App/ImageBase.*, src/Mod/Image/Gui/GLImageBox.*,
src/Mod/Image/Gui/ImageView.*, src/Mod/Image/Gui/XpmImages.h
Copyright: 2004 Imetric 3D GmbH
License: LGPL-2+
Files: src/Mod/Mesh/App/Core/tritritest.h
Copyright: 1997 Tomas Moller <tam@cs.lth.se>
License: other
tritritest.h has no licensing information, but Tomas Moller replied
the following, when asked about it:
.
The code is is free to use for anyone and any projects, but I give no
warranties.
Files: src/Mod/Mesh/App/WildMagic4/*
Copyright: 1998-2007 David Eberly http://www.geometrictools.com
License: LGPL-2.1+
Files: src/Mod/Part/App/edgecluster.*
Copyright: 2010 Joachim Zettler <Joachim.Zettler@gmx.de>
License: LGPL-2+
Files: src/Mod/Raytracing/App/resources/*
Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
Juergen Riegel <juergen.riegel@web.de>
License: LGPL-2+
Files: src/Mod/Sketcher/App/sketchflat/*
Copyright: 2008 Jonathan Westhues
License: GPL-3+
On Debian systems, the complete text of the GNU General Public License
version 3 can be found in '/usr/share/common-licenses/GPL-3'.
Files: src/Mod/Sketcher/App/sketchsolve_cp/*
Copyright: 2009 Jonathan George
License: BSD
Files: src/Mod/Test/unittestgui.py
Copyright: 1999-2001 Steve Purcell
License: PSF
This module is free software, and you may redistribute it and/or modify
it under the same terms as Python itself, so long as this copyright message
and disclaimer are retained in their original form.
.
IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
.
THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
Files: src/Mod/Part/MakeBottle.py, src/Tools/*
Copyright: 2002-2008 Jürgen Riegel <juergen.riegel@web.de>,
Werner Mayer <wmayer@users.sourceforge.net>
License: GPL-2+
Files: src/Tools/generateBase/generateDS.py
Copyright: 2003 Dave Kuhlman
License: MIT
Files: debian/*
Copyright: 2007-2009 Werner Mayer <wmayer@users.sourceforge.net>,
Teemu Ikonen <tpikonen@gmail.com>
License: LGPL-2+

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,997 @@
--- freecad-0.8.2237.orig/debian/changelog
+++ freecad-0.8.2237/debian/changelog
@@ -0,0 +1,155 @@
+freecad (0.8.2237-1intrepid1) intrepid; urgency=low
+
+ * New release for Ubuntu 8.10 (Intrepid Ibex)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 11 Jul 2009 20:36:40 +0200
+
+freecad (0.7.2008-1intrepid1) intrepid; urgency=low
+
+ * New release for Ubuntu 8.10 (Intrepid Ibex)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 21 Mar 2009 19:23:57 +0100
+
+freecad (0.7.1779-1intrepid1) intrepid; urgency=low
+
+ * New release for Ubuntu 8.10 (Intrepid Ibex)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 14 Dec 2008 15:20:54 +0200
+
+freecad (0.7.1658-1intrepid1) intrepid; urgency=low
+
+ * New release for Ubuntu 8.10 (Intrepid Ibex)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 12 Oct 2008 16:20:54 +0200
+
+freecad (0.7.1658-1hardy1) hardy; urgency=low
+
+ * New release for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 11 Oct 2008 18:45:20 +0200
+
+freecad (0.7.1658-1gutsy1) gutsy; urgency=low
+
+ * New release for Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 11 Oct 2008 15:56:27 +0200
+
+freecad (0.7.1525-1feisty1) feisty; urgency=low
+
+ * Activate MIME support in rules file
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 5 Aug 2008 21:27:46 +0200
+
+freecad (0.7.1522-1feisty1) feisty; urgency=low
+
+ * Package for Ubuntu 7.04 (Feisty Fawn)
+ * Abstract interface for geometric data types
+ * Avoid flickering of cursor when cutting several meshes at once
+ * Update to the latest debian policy version 3.7.3
+ * Several bugs fixed with Python GIL
+ * Providing a dev package for freecad
+ * Make TopoDS_Shape and Geom_Geometry classes accessible from Python
+ * Make Python interface for algorithms on shapes and geometries
+ * Support of mesh segments
+ * Add test/annotation object
+ * Add simple measurement facility
+ * Remove OpenCascade dependency in Mesh module
+ * Thumbnail facility added
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 04 Aug 2008 20:11:20 +0200
+
+freecad (0.7.1514-1) unstable; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) hardy; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) gutsy; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) feisty; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) unstable; urgency=low
+
+ * Official release for version 0.7
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Fri, 23 May 2008 23:39:47 +0200
+
+freecad (0.7.1344-1ubuntu2) feisty; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) feisty; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) unstable; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) unstable; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) unstable; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) unstable; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) unstable; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) unstable; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) unstable; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+
--- freecad-0.8.2237.orig/debian/menu
+++ freecad-0.8.2237/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/FCIcon.xpm"
+
--- freecad-0.8.2237.orig/debian/freecad.doc-base
+++ freecad-0.8.2237/debian/freecad.doc-base
@@ -0,0 +1,14 @@
+Document: freecad
+Title: FreeCAD Manual
+Author: Werner Mayer
+Abstract: An extensible Open Source CAx program for Unix/X11
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+Section: Science/Engineering
+
+Format: text
+Files: /usr/share/doc/freecad/README.Linux.gz
+
--- freecad-0.8.2237.orig/debian/compat
+++ freecad-0.8.2237/debian/compat
@@ -0,0 +1 @@
+5
--- freecad-0.8.2237.orig/debian/freecad.links
+++ freecad-0.8.2237/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.8.2237.orig/debian/copyright
+++ freecad-0.8.2237/debian/copyright
@@ -0,0 +1,393 @@
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
+Upstream-Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-Date: 2006-09-26_16:55:15+02:00
+Original-Source-Location: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/ANN/*
+Copyright: 1997-2005 University of Maryland and Sunil Arya and David Mount
+License: LGPL-2.1+
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
+Files: src/3rdParty/atlas/clapack.h
+Copyright: 1999 R. Clint Whaley
+License: BSD-3
+ On Debian systems, the complete text of the Three-clause BSD license
+ can be found in `/usr/share/common-licenses/BSD'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2004 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Matthias Troyer
+License: other
+ Permission to copy, modify, use and distribute this software
+ for any non-commercial or commercial purpose is granted provided
+ that this license appear on all copies of the software source code.
+ .
+ Author assumes no responsibility whatsoever for its use and makes
+ no guarantees about its quality, correctness or reliability.
+ .
+ Kresimir Fresl acknowledges the support of the Faculty of Civil Engineering,
+ University of Zagreb, Croatia.
+
+Files: src/3rdParty/boost/numeric/bindings/amos/*,
+ src/3rdParty/boost/numeric/bindings/blas/*,
+ src/3rdParty/boost/numeric/bindings/traits/config.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/fortran.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/matrix_raw.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/symm_herm_raw.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/vector_raw.hpp,
+Copyright: 2002-2003 Toon Knapen, Kresimir Fresl, Si-Lab b.v.b.a, Joerg Walter
+License: other
+ Permission to use, copy, modify, distribute and sell this software
+ and its documentation for any purpose is hereby granted without fee,
+ provided that the above copyright notice appear in all copies and
+ that both that copyright notice and this permission notice appear
+ in supporting documentation. The authors make no representations
+ about the suitability of this software for any purpose.
+ It is provided "as is" without express or implied warranty.
+
+Files: src/3rdParty/boost/numeric/bindings/traits/type.h
+Copyright: 2000,2001,2002,2003 Si-Lab b.v.b.a. and Toon Knapen
+License: other-non-free
+ * License is hereby granted to use and modify this software
+ * as long as this copyright notice is retained and modifications
+ * are clearly marked.
+ * This License does not permit you to redistribute this software.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/steqr.hpp,
+ src/3rdParty/boost/numeric/bindings/lapack/sytrd.hpp
+Copyright: 2007 Karl Meerbergen
+License: other
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/OCCAdaptMesh/*
+Copyright: 1991-2000 Matra Datavision SA, 2001-2004 Open CASCADE SA
+License: other
+ This file is part of the Open CASCADE Technology software.
+ .
+ This software may be distributed and/or modified under the terms and
+ conditions of the Open CASCADE Public License as defined by Open CASCADE SA
+ and appearing in the file LICENSE included in the packaging of this file.
+ .
+ This software is distributed on an "AS IS" basis, without warranty of any
+ kind, and Open CASCADE SA hereby disclaims all such warranties,
+ including without limitation, any warranties of merchantability, fitness
+ for a particular purpose or non-infringement. Please see the License for
+ the specific terms and conditions governing rights and limitations under the
+ License.
+
+Files: src/3rdParty/Pivy/*
+Copyright: 2002-2007 Systems in Motion
+License: other
+ Permission to use, copy, modify, and distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyCXX/*
+Copyright: ???
+License: ???
+
+Files: src/Base/PyTools.h
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Base/zipios/*
+Copyright: 2000 Thomas Søndergaard
+License: LGPL-2+
+
+Files: src/Base/zipios/directory.*
+Copyright: 1998 Dietmar Kuehl, Claas Solutions GmbH
+License: other
+ Permission to use, copy, modify, distribute and sell this
+ software for any purpose is hereby granted without fee, provided
+ that the above copyright notice appears in all copies and that
+ both that copyright notice and this permission notice appear in
+ supporting documentation. Dietmar Kuehl and Claas Solutions make no
+ representations about the suitability of this software for any
+ purpose. It is provided "as is" without express or implied warranty.
+
+Files: src/Gui/SoFCOffscreenRenderer.cpp
+Copyright: ???
+License: ???
+/*
+ * wrjpgcom.c
+ *
+ * Copyright (C) 1994, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a very simple stand-alone application that inserts
+ * user-supplied text as a COM (comment) marker in a JFIF file.
+ * This may be useful as an example of the minimum logic needed to parse
+ * JPEG markers.
+ */
+
+Files: src/Mod/Cam/App/*
+Copyright: 2007 Joachim Zettler <Joachim.Zettler@gmx.de>,
+ Human Rezai <human@mytum.de>,
+ Mohamad Najib Muhammad Noor <najib_bean@yahoo.co.uk>,
+ Stephane Routelous <stephane.routelous@exotk.org>,
+ Jürgen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*,
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: ???
+
+Files: src/Mod/Drawing/Gui/DrawingView.*, src/Mod/Image/App/ImageBase.*,
+ src/Mod/Image/Gui/GLImageBox.*, src/Mod/Image/Gui/ImageView.*,
+ src/Mod/Image/Gui/XpmImages.h
+Copyright: ??? Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/triangle.cpp, src/Mod/Mesh/App/Core/triangle.h,
+ src/3rdParty/OCCAdaptMesh/src/TriangleAdapt/triangleAdapt.c,
+ src/3rdParty/OCCAdaptMesh/Include/triangleAdapt.h
+Copyright: 1993, 1995, 1997, 1998, 2002, 2005 Jonathan Richard Shewchuk
+License: other-non-free
+ /* This program may be freely redistributed under the condition that the *
+ /* copyright notices (including this entire header and the copyright *
+ /* notice printed when the `-h' switch is selected) are not removed, and *
+ /* no compensation is received. Private, research, and institutional *
+ /* use is free. You may distribute modified versions of this code UNDER *
+ /* THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE *
+ /* SAME FILE REMAIN UNDER COPYRIGHT OF THE ORIGINAL AUTHOR, BOTH SOURCE *
+ /* AND OBJECT CODE ARE MADE FREELY AVAILABLE WITHOUT CHARGE, AND CLEAR *
+ /* NOTICE IS GIVEN OF THE MODIFICATIONS. Distribution of this code as *
+ /* part of a commercial system is permissible ONLY BY DIRECT ARRANGEMENT *
+ /* WITH THE AUTHOR. (If you are not directly supplying this code to a *
+ /* customer, and you are instead telling them how they can obtain it for *
+ /* free, then you are not required to make any arrangement with me.) *
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller
+License: ???
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Tools/ImageTools/ImageConv/CmdLine.*,
+ src/Tools/ImageTools/ImageConv/cmdline.htm
+Copyright: 1999 Chris Losinger, Smaller Animals Software
+ http://www.smalleranimals.com
+License: ZLIB
+ This software is provided 'as-is', without any express
+ or implied warranty. In no event will the authors be
+ held liable for any damages arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software
+ for any purpose, including commercial applications, and
+ to alter it and redistribute it freely, subject to the
+ following restrictions:
+ .
+ 1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+ .
+ 3. This notice may not be removed or altered from any source
+ distribution.
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/atlas/cblas.h,
+ src/3rdParty/boost/numeric/bindings/traits/algorithm.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/transpose.hpp
+ src/3rdParty/boost/numeric/bindings/traits/type.hpp
+ src/App/ComplexGeoDataPyImp.cpp,
+ src/App/DocumentObjectPyImp.cpp
+ src/App/DocumentPyImp.cpp
+ src/App/Doxygen.cpp
+ src/App/FeaturePyImp.cpp
+ src/App/PreCompiled.cpp
+ src/App/PreCompiled.h
+ src/App/PropertyContainerPyImp.cpp
+ src/Base/BaseClassPyImp.cpp
+ src/Base/BoundBoxPyImp.cpp
+ src/Base/Doxygen.cpp
+ src/Base/PersistancePyImp.cpp
+ src/Base/PreCompiled.cpp
+ src/Base/PreCompiled.h
+ src/Base/PyExport.h
+ src/Base/PyTools.c
+ src/Base/VectorPyImp.cpp
+ src/Base/zipios/meta-iostreams.h
+ src/Gui/InventorAll.h
+ src/Gui/PreCompiled.cpp
+ src/Gui/PreCompiled.h
+ src/Gui/Qt4All.h
+ src/Gui/SoFCBoundingBox.cpp
+ src/Gui/SoFCBoundingBox.h
+ src/Mod/Cam/App/PreCompiled.h
+ src/Mod/Cam/App/PreCompiled.cpp
+ src/Mod/Cam/Gui/PreCompiled.h
+ src/Mod/Cam/Gui/PreCompiled.cpp
+ src/Mod/Drawing/App/PreCompiled.h
+ src/Mod/Drawing/App/PreCompiled.cpp
+ src/Mod/Drawing/Gui/PreCompiled.h
+ src/Mod/Drawing/Gui/PreCompiled.cpp
+ src/Mod/Drawing/Gui/AppDrawingGui.cpp
+ src/Mod/Image/App/CaptureClass.h
+ src/Mod/Image/App/PreCompiled.h
+ src/Mod/Image/App/CaptureClass.cpp
+ src/Mod/Image/App/PreCompiled.cpp
+ src/Mod/Image/Gui/PreCompiled.h
+ src/Mod/Image/Gui/PreCompiled.cpp
+ src/Mod/Import/App/PreCompiled.h
+ src/Mod/Import/App/PreCompiled.cpp
+ src/Mod/Import/Gui/PreCompiled.h
+ src/Mod/Import/Gui/PreCompiled.cpp
+ src/Mod/JtReader/App/PreCompiled.h
+ src/Mod/JtReader/App/JtReader.h
+ src/Mod/JtReader/App/PreCompiled.cpp
+ src/Mod/Mesh/App/Doxygen.cpp
+ src/Mod/Mesh/App/PreCompiled.h
+ src/Mod/Mesh/App/MeshPointPyImp.cpp
+ src/Mod/Mesh/App/PreCompiled.cpp
+ src/Mod/Mesh/Gui/Doxygen.cpp
+ src/Mod/Mesh/Gui/PreCompiled.h
+ src/Mod/Mesh/Gui/PreCompiled.cpp
+ src/Mod/Part/App/TopoShapeFacePyImp.cpp
+ src/Mod/Part/App/OpenCascadeAll.h
+ src/Mod/Part/App/PreCompiled.h
+ src/Mod/Part/App/TopoShapePyImp.cpp
+ src/Mod/Part/App/PreCompiled.cpp
+ src/Mod/Part/App/PartFeaturePyImp.cpp
+ src/Mod/Part/Gui/PreCompiled.h
+ src/Mod/Part/Gui/PreCompiled.cpp
+ src/Mod/Points/App/PreCompiled.h
+ src/Mod/Points/App/PreCompiled.cpp
+ src/Mod/Points/Gui/AppPointsGui.cpp
+ src/Mod/Points/Gui/PreCompiled.h
+ src/Mod/Points/Gui/PreCompiled.cpp
+ src/Mod/Raytracing/App/PreCompiled.h
+ src/Mod/Raytracing/App/PreCompiled.cpp
+ src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
+ src/Mod/Raytracing/Gui/Command.cpp src
+ src/Mod/Raytracing/Gui/PreCompiled.h
+ src/Mod/Raytracing/Gui/PreCompiled.cpp
+ src/Mod/Test/Gui/PreCompiled.h
+ src/Mod/Test/Gui/PreCompiled.cpp
+Copyright: Not marked
+License: ???
--- freecad-0.8.2237.orig/debian/freecad.desktop
+++ freecad-0.8.2237/debian/freecad.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/FCIcon.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.8.2237.orig/debian/control
+++ freecad-0.8.2237/debian/control
@@ -0,0 +1,50 @@
+Source: freecad
+Section: x11
+Priority: optional
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Homepage: http://sourceforge.net/projects/free-cad
+Build-Depends: debhelper (>= 5), autotools-dev, libc6-dev (>= 2.1.3),
+ libstdc++6, libboost1.35-dev, libboost-date-time1.35-dev, libboost-filesystem1.35-dev,
+ libboost-graph1.35-dev, libboost-iostreams1.35-dev, libboost-program-options1.35-dev,
+ libboost-regex1.35-dev, libboost-serialization1.35-dev, libboost-signals1.35-dev, libboost-system1.35-dev,
+ zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
+ libxt-dev, libxmu-dev, libxi-dev, libx11-dev, libxext-dev,
+ libqt4-dev, libsoqt4-dev, libcoin40-dev, libgl1-mesa-dev,
+ python2.5-dev, python, python-central (>= 0.5.6),
+ libgts-dev, libcv-dev, libopencascade-dev
+Standards-Version: 3.7.3
+XS-Python-Version: current
+
+Package: freecad
+Architecture: any
+Section: science
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+XB-Python-Version: ${python:Versions}
+Conflicts: freecad (<= 0.6.472-1)
+Suggests: gnochm | kchmviewer | kchmviewer-nokde | xchm, python-opencv
+Description: An extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: freecad (>= ${source:Version})
+XB-Python-Version: ${python:Versions}
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the libtool .la files, headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+
--- freecad-0.8.2237.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.8.2237/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>
--- freecad-0.8.2237.orig/debian/docs
+++ freecad-0.8.2237/debian/docs
@@ -0,0 +1,2 @@
+ChangeLog.txt
+README.Linux
--- freecad-0.8.2237.orig/debian/README.Debian
+++ freecad-0.8.2237/debian/README.Debian
@@ -0,0 +1,6 @@
+freecad for Debian
+------------------
+
+- First Debian package for FreeCAD.
+
+ -- Werner Mayer <wmayer@users.sourceforge.net>, Tue, 26 Sep 2006 16:55:15 +0200
--- freecad-0.8.2237.orig/debian/freecad.1
+++ freecad-0.8.2237/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.8.2237.orig/debian/rules
+++ freecad-0.8.2237/debian/rules
@@ -0,0 +1,143 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure: autogen.sh
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+# Add here commands to configure the package.
+ ./configure --with-occ-include=/usr/include/opencascade --with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+
+# Add here commands to compile the package.
+ $(MAKE)
+ #docbook-to-man debian/freecad.sgml > freecad.1
+
+ touch $@
+
+# Add here commands to clean up after the build process.
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp
+ [ ! -f Makefile ] || $(MAKE) distclean
+ rm -f configure
+ dh_clean
+ find -name 'Makefile.in' | xargs rm -f
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 aclocal.m4 config.guess config.sub depcomp install-sh
+ rm -f ltmain.sh missing config.log libtool
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+# Add here commands to install the package into debian/tmp/freecad.
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+
+# install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/* usr/share/
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+
+# install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+
+# special treating of Draft module
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.svg usr/lib/freecad/Mod/Draft
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.ui usr/lib/freecad/Mod/Draft
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+
+# special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.la usr/lib/freecad/lib
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs ChangeLog.txt
+ dh_installdocs
+ dh_installexamples
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_install debian/mime/freecad-thumbnailer usr/bin
+ dh_install debian/mime/freecad.schemas etc/gconf/schemas
+ dh_gconf -pfreecad
+ dh_desktop
+ dh_installmenu
+ dh_installmime
+ dh_pycentral
+# dh_installinfo
+# dh_installman debian/freecad.1
+ dh_installman debian/freecad.1 debian/mime/freecad-thumbnailer.1
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.8.2237.orig/debian/mime/freecad-thumbnailer.1
+++ freecad-0.8.2237/debian/mime/freecad-thumbnailer.1
@@ -0,0 +1,20 @@
+.TH FREECAD 1 "August 04, 2008" freecad "Linux User's Manual"
+.SH NAME
+freecad-thumbnailer \- A thumbnailer for FreeCAD project files
+.SH SYNOPSIS
+\fBfreecad-thumbnailer\fP [ -s \fIsize\fP ] \fIinput file\fP \fIoutput file\fP
+.SH DESCRIPTION
+\fBfreecad-thumbnailer\fP
+is a Python script that extracts an embedded thumbnail from a FreeCAD project file.
+If no thumbnail is embedded then nothing happens. According to the specification of
+freedesktop.org the thumbnail image is a PNG file. The required \fBinput file\fP argument
+specifies the project file where the thumbnail should be extracted from and the
+\fBoutput file\fP specifies the file where the thumbnail should be written to.
+.SH OPTIONS
+.TP
+\fB-s \fIsize\fR
+Specify the size of the image in pixel.
+.SH "SEE ALSO"
+freecad(1), freecadcmd(1)
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.8.2237.orig/debian/mime/freecad.schemas
+++ freecad-0.8.2237/debian/mime/freecad.schemas
@@ -0,0 +1,30 @@
+<gconfschemafile>
+ <schemalist>
+
+ <schema>
+ <key>/schemas/desktop/gnome/thumbnailers/application@x-extension-fcstd/enable</key>
+ <applyto>/desktop/gnome/thumbnailers/application@x-extension-fcstd/enable</applyto>
+ <owner>freecad</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Enable thumbnailing of FreeCAD documents.</short>
+ <long>Enable thumbnailing of FreeCAD documents.</long>
+ </locale>
+ </schema>
+
+
+ <schema>
+ <key>/schemas/desktop/gnome/thumbnailers/application@x-extension-fcstd/command</key>
+ <applyto>/desktop/gnome/thumbnailers/application@x-extension-fcstd/command</applyto>
+ <owner>freecad</owner>
+ <type>string</type>
+ <default>/usr/bin/freecad-thumbnailer -s %s %u %o</default>
+ <locale name="C">
+ <short>Thumbnail command for documents from FreeCAD.</short>
+ <long>Valid command plus arguments for freecad-thumbnailer.</long>
+ </locale>
+ </schema>
+
+ </schemalist>
+</gconfschemafile>
--- freecad-0.8.2237.orig/debian/mime/freecad-thumbnailer
+++ freecad-0.8.2237/debian/mime/freecad-thumbnailer
@@ -0,0 +1,26 @@
+#!/usr/bin/python
+
+import sys, zipfile, md5
+import getopt
+import gnomevfs
+
+opt,par = getopt.getopt(sys.argv[1:],'-s:')
+inpfile = gnomevfs.get_local_path_from_uri(par[0])
+outfile = par[1]
+
+try:
+ zfile=zipfile.ZipFile(inpfile)
+ files=zfile.namelist()
+ # check for meta-file if it's really a FreeCAD document
+ if files[0] != "Document.xml":
+ sys.exit(1)
+
+ image="thumbnails/Thumbnail.png"
+ if image in files:
+ image=zfile.read(image)
+ thumb=open(outfile,"wb")
+ thumb.write(image)
+ thumb.close()
+except:
+ sys.exit(1)
+

View File

@@ -0,0 +1,997 @@
--- freecad-0.8.2237.orig/debian/control
+++ freecad-0.8.2237/debian/control
@@ -0,0 +1,50 @@
+Source: freecad
+Section: x11
+Priority: optional
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Homepage: http://sourceforge.net/projects/free-cad
+Build-Depends: debhelper (>= 5), autotools-dev, libc6-dev (>= 2.1.3),
+ libstdc++6, libboost1.37-dev, libboost-date-time1.37-dev, libboost-filesystem1.37-dev,
+ libboost-graph1.37-dev, libboost-iostreams1.37-dev, libboost-program-options1.37-dev,
+ libboost-regex1.37-dev, libboost-serialization1.37-dev, libboost-signals1.37-dev, libboost-system1.37-dev,
+ zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
+ libxt-dev, libxmu-dev, libxi-dev, libx11-dev, libxext-dev,
+ libqt4-dev, libsoqt4-dev, libcoin40-dev, libgl1-mesa-dev,
+ python2.5-dev, python, python-central (>= 0.5.6),
+ libgts-dev, libcv-dev, libopencascade-dev
+Standards-Version: 3.8.0
+XS-Python-Version: current
+
+Package: freecad
+Architecture: any
+Section: science
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+XB-Python-Version: ${python:Versions}
+Conflicts: freecad (<= 0.6.472-1)
+Suggests: gnochm | kchmviewer | kchmviewer-nokde | xchm, python-opencv
+Description: An extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: freecad (>= ${source:Version}), ${misc:Depends}
+XB-Python-Version: ${python:Versions}
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the libtool .la files, headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+
--- freecad-0.8.2237.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.8.2237/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>
--- freecad-0.8.2237.orig/debian/freecad.links
+++ freecad-0.8.2237/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.8.2237.orig/debian/copyright
+++ freecad-0.8.2237/debian/copyright
@@ -0,0 +1,393 @@
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
+Upstream-Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-Date: 2006-09-26_16:55:15+02:00
+Original-Source-Location: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/ANN/*
+Copyright: 1997-2005 University of Maryland and Sunil Arya and David Mount
+License: LGPL-2.1+
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
+Files: src/3rdParty/atlas/clapack.h
+Copyright: 1999 R. Clint Whaley
+License: BSD-3
+ On Debian systems, the complete text of the Three-clause BSD license
+ can be found in `/usr/share/common-licenses/BSD'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2004 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Matthias Troyer
+License: other
+ Permission to copy, modify, use and distribute this software
+ for any non-commercial or commercial purpose is granted provided
+ that this license appear on all copies of the software source code.
+ .
+ Author assumes no responsibility whatsoever for its use and makes
+ no guarantees about its quality, correctness or reliability.
+ .
+ Kresimir Fresl acknowledges the support of the Faculty of Civil Engineering,
+ University of Zagreb, Croatia.
+
+Files: src/3rdParty/boost/numeric/bindings/amos/*,
+ src/3rdParty/boost/numeric/bindings/blas/*,
+ src/3rdParty/boost/numeric/bindings/traits/config.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/fortran.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/matrix_raw.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/symm_herm_raw.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/vector_raw.hpp,
+Copyright: 2002-2003 Toon Knapen, Kresimir Fresl, Si-Lab b.v.b.a, Joerg Walter
+License: other
+ Permission to use, copy, modify, distribute and sell this software
+ and its documentation for any purpose is hereby granted without fee,
+ provided that the above copyright notice appear in all copies and
+ that both that copyright notice and this permission notice appear
+ in supporting documentation. The authors make no representations
+ about the suitability of this software for any purpose.
+ It is provided "as is" without express or implied warranty.
+
+Files: src/3rdParty/boost/numeric/bindings/traits/type.h
+Copyright: 2000,2001,2002,2003 Si-Lab b.v.b.a. and Toon Knapen
+License: other-non-free
+ * License is hereby granted to use and modify this software
+ * as long as this copyright notice is retained and modifications
+ * are clearly marked.
+ * This License does not permit you to redistribute this software.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/steqr.hpp,
+ src/3rdParty/boost/numeric/bindings/lapack/sytrd.hpp
+Copyright: 2007 Karl Meerbergen
+License: other
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/OCCAdaptMesh/*
+Copyright: 1991-2000 Matra Datavision SA, 2001-2004 Open CASCADE SA
+License: other
+ This file is part of the Open CASCADE Technology software.
+ .
+ This software may be distributed and/or modified under the terms and
+ conditions of the Open CASCADE Public License as defined by Open CASCADE SA
+ and appearing in the file LICENSE included in the packaging of this file.
+ .
+ This software is distributed on an "AS IS" basis, without warranty of any
+ kind, and Open CASCADE SA hereby disclaims all such warranties,
+ including without limitation, any warranties of merchantability, fitness
+ for a particular purpose or non-infringement. Please see the License for
+ the specific terms and conditions governing rights and limitations under the
+ License.
+
+Files: src/3rdParty/Pivy/*
+Copyright: 2002-2007 Systems in Motion
+License: other
+ Permission to use, copy, modify, and distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyCXX/*
+Copyright: ???
+License: ???
+
+Files: src/Base/PyTools.h
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Base/zipios/*
+Copyright: 2000 Thomas Søndergaard
+License: LGPL-2+
+
+Files: src/Base/zipios/directory.*
+Copyright: 1998 Dietmar Kuehl, Claas Solutions GmbH
+License: other
+ Permission to use, copy, modify, distribute and sell this
+ software for any purpose is hereby granted without fee, provided
+ that the above copyright notice appears in all copies and that
+ both that copyright notice and this permission notice appear in
+ supporting documentation. Dietmar Kuehl and Claas Solutions make no
+ representations about the suitability of this software for any
+ purpose. It is provided "as is" without express or implied warranty.
+
+Files: src/Gui/SoFCOffscreenRenderer.cpp
+Copyright: ???
+License: ???
+/*
+ * wrjpgcom.c
+ *
+ * Copyright (C) 1994, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a very simple stand-alone application that inserts
+ * user-supplied text as a COM (comment) marker in a JFIF file.
+ * This may be useful as an example of the minimum logic needed to parse
+ * JPEG markers.
+ */
+
+Files: src/Mod/Cam/App/*
+Copyright: 2007 Joachim Zettler <Joachim.Zettler@gmx.de>,
+ Human Rezai <human@mytum.de>,
+ Mohamad Najib Muhammad Noor <najib_bean@yahoo.co.uk>,
+ Stephane Routelous <stephane.routelous@exotk.org>,
+ Jürgen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*,
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: ???
+
+Files: src/Mod/Drawing/Gui/DrawingView.*, src/Mod/Image/App/ImageBase.*,
+ src/Mod/Image/Gui/GLImageBox.*, src/Mod/Image/Gui/ImageView.*,
+ src/Mod/Image/Gui/XpmImages.h
+Copyright: ??? Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/triangle.cpp, src/Mod/Mesh/App/Core/triangle.h,
+ src/3rdParty/OCCAdaptMesh/src/TriangleAdapt/triangleAdapt.c,
+ src/3rdParty/OCCAdaptMesh/Include/triangleAdapt.h
+Copyright: 1993, 1995, 1997, 1998, 2002, 2005 Jonathan Richard Shewchuk
+License: other-non-free
+ /* This program may be freely redistributed under the condition that the *
+ /* copyright notices (including this entire header and the copyright *
+ /* notice printed when the `-h' switch is selected) are not removed, and *
+ /* no compensation is received. Private, research, and institutional *
+ /* use is free. You may distribute modified versions of this code UNDER *
+ /* THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE *
+ /* SAME FILE REMAIN UNDER COPYRIGHT OF THE ORIGINAL AUTHOR, BOTH SOURCE *
+ /* AND OBJECT CODE ARE MADE FREELY AVAILABLE WITHOUT CHARGE, AND CLEAR *
+ /* NOTICE IS GIVEN OF THE MODIFICATIONS. Distribution of this code as *
+ /* part of a commercial system is permissible ONLY BY DIRECT ARRANGEMENT *
+ /* WITH THE AUTHOR. (If you are not directly supplying this code to a *
+ /* customer, and you are instead telling them how they can obtain it for *
+ /* free, then you are not required to make any arrangement with me.) *
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller
+License: ???
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Tools/ImageTools/ImageConv/CmdLine.*,
+ src/Tools/ImageTools/ImageConv/cmdline.htm
+Copyright: 1999 Chris Losinger, Smaller Animals Software
+ http://www.smalleranimals.com
+License: ZLIB
+ This software is provided 'as-is', without any express
+ or implied warranty. In no event will the authors be
+ held liable for any damages arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software
+ for any purpose, including commercial applications, and
+ to alter it and redistribute it freely, subject to the
+ following restrictions:
+ .
+ 1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+ .
+ 3. This notice may not be removed or altered from any source
+ distribution.
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/atlas/cblas.h,
+ src/3rdParty/boost/numeric/bindings/traits/algorithm.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/transpose.hpp
+ src/3rdParty/boost/numeric/bindings/traits/type.hpp
+ src/App/ComplexGeoDataPyImp.cpp,
+ src/App/DocumentObjectPyImp.cpp
+ src/App/DocumentPyImp.cpp
+ src/App/Doxygen.cpp
+ src/App/FeaturePyImp.cpp
+ src/App/PreCompiled.cpp
+ src/App/PreCompiled.h
+ src/App/PropertyContainerPyImp.cpp
+ src/Base/BaseClassPyImp.cpp
+ src/Base/BoundBoxPyImp.cpp
+ src/Base/Doxygen.cpp
+ src/Base/PersistancePyImp.cpp
+ src/Base/PreCompiled.cpp
+ src/Base/PreCompiled.h
+ src/Base/PyExport.h
+ src/Base/PyTools.c
+ src/Base/VectorPyImp.cpp
+ src/Base/zipios/meta-iostreams.h
+ src/Gui/InventorAll.h
+ src/Gui/PreCompiled.cpp
+ src/Gui/PreCompiled.h
+ src/Gui/Qt4All.h
+ src/Gui/SoFCBoundingBox.cpp
+ src/Gui/SoFCBoundingBox.h
+ src/Mod/Cam/App/PreCompiled.h
+ src/Mod/Cam/App/PreCompiled.cpp
+ src/Mod/Cam/Gui/PreCompiled.h
+ src/Mod/Cam/Gui/PreCompiled.cpp
+ src/Mod/Drawing/App/PreCompiled.h
+ src/Mod/Drawing/App/PreCompiled.cpp
+ src/Mod/Drawing/Gui/PreCompiled.h
+ src/Mod/Drawing/Gui/PreCompiled.cpp
+ src/Mod/Drawing/Gui/AppDrawingGui.cpp
+ src/Mod/Image/App/CaptureClass.h
+ src/Mod/Image/App/PreCompiled.h
+ src/Mod/Image/App/CaptureClass.cpp
+ src/Mod/Image/App/PreCompiled.cpp
+ src/Mod/Image/Gui/PreCompiled.h
+ src/Mod/Image/Gui/PreCompiled.cpp
+ src/Mod/Import/App/PreCompiled.h
+ src/Mod/Import/App/PreCompiled.cpp
+ src/Mod/Import/Gui/PreCompiled.h
+ src/Mod/Import/Gui/PreCompiled.cpp
+ src/Mod/JtReader/App/PreCompiled.h
+ src/Mod/JtReader/App/JtReader.h
+ src/Mod/JtReader/App/PreCompiled.cpp
+ src/Mod/Mesh/App/Doxygen.cpp
+ src/Mod/Mesh/App/PreCompiled.h
+ src/Mod/Mesh/App/MeshPointPyImp.cpp
+ src/Mod/Mesh/App/PreCompiled.cpp
+ src/Mod/Mesh/Gui/Doxygen.cpp
+ src/Mod/Mesh/Gui/PreCompiled.h
+ src/Mod/Mesh/Gui/PreCompiled.cpp
+ src/Mod/Part/App/TopoShapeFacePyImp.cpp
+ src/Mod/Part/App/OpenCascadeAll.h
+ src/Mod/Part/App/PreCompiled.h
+ src/Mod/Part/App/TopoShapePyImp.cpp
+ src/Mod/Part/App/PreCompiled.cpp
+ src/Mod/Part/App/PartFeaturePyImp.cpp
+ src/Mod/Part/Gui/PreCompiled.h
+ src/Mod/Part/Gui/PreCompiled.cpp
+ src/Mod/Points/App/PreCompiled.h
+ src/Mod/Points/App/PreCompiled.cpp
+ src/Mod/Points/Gui/AppPointsGui.cpp
+ src/Mod/Points/Gui/PreCompiled.h
+ src/Mod/Points/Gui/PreCompiled.cpp
+ src/Mod/Raytracing/App/PreCompiled.h
+ src/Mod/Raytracing/App/PreCompiled.cpp
+ src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
+ src/Mod/Raytracing/Gui/Command.cpp src
+ src/Mod/Raytracing/Gui/PreCompiled.h
+ src/Mod/Raytracing/Gui/PreCompiled.cpp
+ src/Mod/Test/Gui/PreCompiled.h
+ src/Mod/Test/Gui/PreCompiled.cpp
+Copyright: Not marked
+License: ???
--- freecad-0.8.2237.orig/debian/freecad.desktop
+++ freecad-0.8.2237/debian/freecad.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/FCIcon.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.8.2237.orig/debian/compat
+++ freecad-0.8.2237/debian/compat
@@ -0,0 +1 @@
+5
--- freecad-0.8.2237.orig/debian/freecad.doc-base
+++ freecad-0.8.2237/debian/freecad.doc-base
@@ -0,0 +1,14 @@
+Document: freecad
+Title: FreeCAD Manual
+Author: Werner Mayer
+Abstract: An extensible Open Source CAx program for Unix/X11
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+Section: Science/Engineering
+
+Format: text
+Files: /usr/share/doc/freecad/README.Linux.gz
+
--- freecad-0.8.2237.orig/debian/changelog
+++ freecad-0.8.2237/debian/changelog
@@ -0,0 +1,155 @@
+freecad (0.8.2237-1jaunty1) jaunty; urgency=low
+
+ * New release for Ubuntu 9.04 (Jackalope Jaunty)
+
+ -- Werner Mayer <werner@users.sourceforge.net> Sat, 11 Jul 2009 21:59:53 +0200
+
+freecad (0.7.2008-1jaunty1) intrepid; urgency=low
+
+ * New release for Ubuntu 9.04 (Jackalope Jaunty)
+
+ -- Werner Mayer <werner@users.sourceforge.net> Sat, 21 Mar 2009 19:23:57 +0100
+
+freecad (0.7.1779-1intrepid1) intrepid; urgency=low
+
+ * New release for Ubuntu 8.10 (Intrepid Ibex)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 14 Dec 2008 15:20:54 +0200
+
+freecad (0.7.1658-1intrepid1) intrepid; urgency=low
+
+ * New release for Ubuntu 8.10 (Intrepid Ibex)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 12 Oct 2008 16:20:54 +0200
+
+freecad (0.7.1658-1hardy1) hardy; urgency=low
+
+ * New release for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 11 Oct 2008 18:45:20 +0200
+
+freecad (0.7.1658-1gutsy1) gutsy; urgency=low
+
+ * New release for Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 11 Oct 2008 15:56:27 +0200
+
+freecad (0.7.1525-1feisty1) feisty; urgency=low
+
+ * Activate MIME support in rules file
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 5 Aug 2008 21:27:46 +0200
+
+freecad (0.7.1522-1feisty1) feisty; urgency=low
+
+ * Package for Ubuntu 7.04 (Feisty Fawn)
+ * Abstract interface for geometric data types
+ * Avoid flickering of cursor when cutting several meshes at once
+ * Update to the latest debian policy version 3.7.3
+ * Several bugs fixed with Python GIL
+ * Providing a dev package for freecad
+ * Make TopoDS_Shape and Geom_Geometry classes accessible from Python
+ * Make Python interface for algorithms on shapes and geometries
+ * Support of mesh segments
+ * Add test/annotation object
+ * Add simple measurement facility
+ * Remove OpenCascade dependency in Mesh module
+ * Thumbnail facility added
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 04 Aug 2008 20:11:20 +0200
+
+freecad (0.7.1514-1) unstable; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) hardy; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) gutsy; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) feisty; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) unstable; urgency=low
+
+ * Official release for version 0.7
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Fri, 23 May 2008 23:39:47 +0200
+
+freecad (0.7.1344-1ubuntu2) feisty; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) feisty; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) unstable; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) unstable; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) unstable; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) unstable; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) unstable; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) unstable; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) unstable; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+
--- freecad-0.8.2237.orig/debian/freecad.1
+++ freecad-0.8.2237/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.8.2237.orig/debian/rules
+++ freecad-0.8.2237/debian/rules
@@ -0,0 +1,143 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure: autogen.sh
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+# Add here commands to configure the package.
+ ./configure --with-occ-include=/usr/include/opencascade --with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+
+# Add here commands to compile the package.
+ $(MAKE)
+ #docbook-to-man debian/freecad.sgml > freecad.1
+
+ touch $@
+
+# Add here commands to clean up after the build process.
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp
+ [ ! -f Makefile ] || $(MAKE) distclean
+ rm -f configure
+ dh_clean
+ find -name 'Makefile.in' | xargs rm -f
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 aclocal.m4 config.guess config.sub depcomp install-sh
+ rm -f ltmain.sh missing config.log libtool
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+# Add here commands to install the package into debian/tmp/freecad.
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+
+# install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/* usr/share/
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+
+# install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+
+# special treating of Draft module
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.svg usr/lib/freecad/Mod/Draft
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.ui usr/lib/freecad/Mod/Draft
+# dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+
+# special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.la usr/lib/freecad/lib
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs ChangeLog.txt
+ dh_installdocs
+ dh_installexamples
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_install debian/mime/freecad-thumbnailer usr/bin
+ dh_install debian/mime/freecad.schemas etc/gconf/schemas
+ dh_gconf -pfreecad
+ dh_desktop
+ dh_installmenu
+ dh_installmime
+ dh_pycentral
+# dh_installinfo
+# dh_installman debian/freecad.1
+ dh_installman debian/freecad.1 debian/mime/freecad-thumbnailer.1
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.8.2237.orig/debian/menu
+++ freecad-0.8.2237/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/FCIcon.xpm"
+
--- freecad-0.8.2237.orig/debian/README.Debian
+++ freecad-0.8.2237/debian/README.Debian
@@ -0,0 +1,6 @@
+freecad for Debian
+------------------
+
+- First Debian package for FreeCAD.
+
+ -- Werner Mayer <wmayer@users.sourceforge.net>, Tue, 26 Sep 2006 16:55:15 +0200
--- freecad-0.8.2237.orig/debian/docs
+++ freecad-0.8.2237/debian/docs
@@ -0,0 +1,2 @@
+ChangeLog.txt
+README.Linux
--- freecad-0.8.2237.orig/debian/mime/freecad.schemas
+++ freecad-0.8.2237/debian/mime/freecad.schemas
@@ -0,0 +1,30 @@
+<gconfschemafile>
+ <schemalist>
+
+ <schema>
+ <key>/schemas/desktop/gnome/thumbnailers/application@x-extension-fcstd/enable</key>
+ <applyto>/desktop/gnome/thumbnailers/application@x-extension-fcstd/enable</applyto>
+ <owner>freecad</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Enable thumbnailing of FreeCAD documents.</short>
+ <long>Enable thumbnailing of FreeCAD documents.</long>
+ </locale>
+ </schema>
+
+
+ <schema>
+ <key>/schemas/desktop/gnome/thumbnailers/application@x-extension-fcstd/command</key>
+ <applyto>/desktop/gnome/thumbnailers/application@x-extension-fcstd/command</applyto>
+ <owner>freecad</owner>
+ <type>string</type>
+ <default>/usr/bin/freecad-thumbnailer -s %s %u %o</default>
+ <locale name="C">
+ <short>Thumbnail command for documents from FreeCAD.</short>
+ <long>Valid command plus arguments for freecad-thumbnailer.</long>
+ </locale>
+ </schema>
+
+ </schemalist>
+</gconfschemafile>
--- freecad-0.8.2237.orig/debian/mime/freecad-thumbnailer
+++ freecad-0.8.2237/debian/mime/freecad-thumbnailer
@@ -0,0 +1,26 @@
+#!/usr/bin/python
+
+import sys, zipfile, md5
+import getopt
+import gnomevfs
+
+opt,par = getopt.getopt(sys.argv[1:],'-s:')
+inpfile = gnomevfs.get_local_path_from_uri(par[0])
+outfile = par[1]
+
+try:
+ zfile=zipfile.ZipFile(inpfile)
+ files=zfile.namelist()
+ # check for meta-file if it's really a FreeCAD document
+ if files[0] != "Document.xml":
+ sys.exit(1)
+
+ image="thumbnails/Thumbnail.png"
+ if image in files:
+ image=zfile.read(image)
+ thumb=open(outfile,"wb")
+ thumb.write(image)
+ thumb.close()
+except:
+ sys.exit(1)
+
--- freecad-0.8.2237.orig/debian/mime/freecad-thumbnailer.1
+++ freecad-0.8.2237/debian/mime/freecad-thumbnailer.1
@@ -0,0 +1,20 @@
+.TH FREECAD 1 "August 04, 2008" freecad "Linux User's Manual"
+.SH NAME
+freecad-thumbnailer \- A thumbnailer for FreeCAD project files
+.SH SYNOPSIS
+\fBfreecad-thumbnailer\fP [ -s \fIsize\fP ] \fIinput file\fP \fIoutput file\fP
+.SH DESCRIPTION
+\fBfreecad-thumbnailer\fP
+is a Python script that extracts an embedded thumbnail from a FreeCAD project file.
+If no thumbnail is embedded then nothing happens. According to the specification of
+freedesktop.org the thumbnail image is a PNG file. The required \fBinput file\fP argument
+specifies the project file where the thumbnail should be extracted from and the
+\fBoutput file\fP specifies the file where the thumbnail should be written to.
+.SH OPTIONS
+.TP
+\fB-s \fIsize\fR
+Specify the size of the image in pixel.
+.SH "SEE ALSO"
+freecad(1), freecadcmd(1)
+.SH AUTHOR
+This manual page was written by Werner Mayer.

View File

@@ -0,0 +1,736 @@
--- freecad-0.9.2646.orig/debian/compat
+++ freecad-0.9.2646/debian/compat
@@ -0,0 +1 @@
+7
--- freecad-0.9.2646.orig/debian/rules
+++ freecad-0.9.2646/debian/rules
@@ -0,0 +1,106 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure: autogen.sh
+ dh_testdir
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+ ./configure --with-occ-include=/usr/include/opencascade \
+--with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad --docdir=/usr/share/doc/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+ $(MAKE)
+ touch $@
+
+clean:
+ dh clean
+ rm -f build-stamp
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 config.log libtool
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+ # Remove testing modules we don't want to have in the deb
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/_TEMPLATE_
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/TemplatePyMod
+ # install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/freecad/* usr/share/freecad/
+ #dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_installman debian/freecad.1
+ dh_installchangelogs ChangeLog.txt
+ # install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+ # special treating of Draft module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.svg usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.ui usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+ # special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.la usr/lib/freecad/lib
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+ # install the help system
+ dh_install -pfreecad-doc debian/tmp/freecad/usr/share/doc/* usr/share/doc/
+ touch install-stamp
+
+binary-indep: build install
+ # We have nothing to do by default.
+
+binary-arch: build install
+ dh binary-arch
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.9.2646.orig/debian/copyright
+++ freecad-0.9.2646/debian/copyright
@@ -0,0 +1,294 @@
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
+Upstream-Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-Date: 2006-09-26_16:55:15+02:00
+Original-Source-Location: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2009 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2008 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Jeremy Conlin, Thomas Klimpel, Fabien Dekeyser,
+ Quoc-Cuong Pham, Si-Lab b.v.b.a., Joerg Walter
+License: other-boost-1.0
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/lapack.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/std_valarray.hpp
+Copyright: 2003 Toon Knapen, Kresimir Fresl, Karl Meerbergen
+License: other
+ * Permission to copy, modify, use and distribute this software
+ * for any non-commercial or commercial purpose is granted provided
+ * that this license appear on all copies of the software source code.
+ *
+ * Authors assume no responsibility whatsoever for its use and makes
+ * no guarantees about its quality, correctness or reliability.
+ *
+ * KF acknowledges the support of the Faculty of Civil Engineering,
+ * University of Zagreb, Croatia.
+
+Files: src/Base/Base64.*
+Copyright: 2004-2008 Rene Nyffenegger <rene.nyffenegger@adp-gmbh.ch>
+License: other
+ This source code is provided 'as-is', without any express or implied
+ warranty. In no event will the author be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this source code must not be misrepresented; you must not
+ claim that you wrote the original source code. If you use this source code
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original source code.
+ .
+ 3. This notice may not be removed or altered from any source distribution.
+
+Files: src/Base/fdstream.hpp
+Copyright: 2001 Nicolai M. Josuttis
+License: other
+ Permission to copy, use, modify, sell and distribute this software
+ is granted provided this copyright notice appears in all copies.
+ This software is provided "as is" without express or implied
+ warranty, and with no claim as to its suitability for any purpose.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyTools.*
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Base/zipios/*
+Copyright: 2000 Thomas Søndergaard
+License: LGPL-2+
+
+Files: src/Base/zipios/directory.*
+Copyright: 1998 Dietmar Kuehl, Claas Solutions GmbH
+License: other
+ Permission to use, copy, modify, distribute and sell this
+ software for any purpose is hereby granted without fee, provided
+ that the above copyright notice appears in all copies and that
+ both that copyright notice and this permission notice appear in
+ supporting documentation. Dietmar Kuehl and Claas Solutions make no
+ representations about the suitability of this software for any
+ purpose. It is provided "as is" without express or implied warranty.
+
+Files: src/CXX/*
+Copyright: 1998-2007 The Regents of the University of California
+License: BSD-3
+ Copyright (c) 1998 - 2007
+ The Regents of the University of California
+ Produced at the Lawrence Livermore National Laboratory
+ Written by Geoff Furnish, Paul F. Dubois, Barry A. Scott
+ UCRL-CODE-227018
+ All rights reserved.
+ .
+ This file is part of PyCXX. For details, see http://cxx.sourceforge.net.
+ .
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ .
+ - Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the disclaimer below.
+ - Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the disclaimer (as noted below) in the
+ documentation and/or materials provided with the distribution.
+ - Neither the name of the UC/LLNL nor the names of its contributors may be
+ used to endorse or promote products derived from this software without
+ specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF CALIFORNIA,
+ THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ .
+ Additional BSD Notice
+ .
+ 1. This notice is required to be provided under our contract with the U.S.
+ Department of Energy (DOE). This work was produced at the University of
+ California, Lawrence Livermore National Laboratory under Contract No.
+ W-7405-ENG-48 with the DOE.
+ .
+ 2. Neither the United States Government nor the University of California
+ nor any of their employees, makes any warranty, express or implied, or
+ assumes any liability or responsibility for the accuracy, completeness,
+ or usefulness of any information, apparatus, product, or process disclosed,
+ or represents that its use would not infringe privately-owned rights.
+ .
+ 3. Also, reference herein to any specific commercial products, process, or
+ services by trade name, trademark, manufacturer or otherwise does not
+ necessarily constitute or imply its endorsement, recommendation, or
+ favoring by the United States Government or the University of California.
+ The views and opinions of authors expressed herein do not necessarily
+ state or reflect those of the United States Government or the University
+ of California, and shall not be used for advertising or product endorsement
+ purposes.
+
+Files: src/Gui/iisTaskPanel/src/*
+Copyright: http://www.ii-system.com
+License: LGPL
+
+Files: src/Mod/Draft/*
+Copyright: Yorik van Havre, Werner Mayer, Martin Burbaum
+License: GPL-2+
+
+Files: src/Mod/Draft/draftlibs/dxf*
+Copyright: 2005-2008 Ed Blake, Remigiusz Fiedler, Stani Michiels
+License: GPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: LGPL
+
+Files: src/Mod/Image/App/ImageBase.*, src/Mod/Image/Gui/GLImageBox.*,
+ src/Mod/Image/Gui/ImageView.*, src/Mod/Image/Gui/XpmImages.h
+Copyright: 2004 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller <tam@cs.lth.se>
+License: other
+ tritritest.h has no licensing information, but Tomas Moller replied
+ the following, when asked about it:
+ .
+ The code is is free to use for anyone and any projects, but I give no
+ warranties.
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Sketcher/App/sketchflat/*
+Copyright: 2008 Jonathan Westhues
+License: GPL-3+
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in '/usr/share/common-licenses/GPL-3'.
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Mod/Part/MakeBottle.py, src/Tools/*
+Copyright: 2002-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: GPL-2+
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in '/usr/share/common-licenses/GPL-2'.
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: debian/*
+Copyright: 2007-2009 Werner Mayer <wmayer@users.sourceforge.net>,
+ Teemu Ikonen <tpikonen@gmail.com>
+License: LGPL-2+
--- freecad-0.9.2646.orig/debian/freecad.links
+++ freecad-0.9.2646/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.9.2646.orig/debian/freecad.1
+++ freecad-0.9.2646/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.9.2646.orig/debian/changelog
+++ freecad-0.9.2646/debian/changelog
@@ -0,0 +1,130 @@
+freecad (0.9.2646-1karmic) karmic; urgency=low
+
+
+ * New upstream release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 14 Nov 2009 22:00:00 +0200
+
+freecad (0.8.2237-2) unstable; urgency=low
+
+ * Added libboost-python-dev to Build-Depends (closes: #549738).
+ * Added myself to uploaders list.
+ * Bumped Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Thu, 12 Nov 2009 12:02:42 -0500
+
+freecad (0.8.2237-1) unstable; urgency=low
+
+ * New Upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 16 Jul 2009 18:37:41 +0200
+
+freecad (0.7.1658-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 20 Oct 2008 15:35:58 +0200
+
+freecad (0.7.1514-1) UNRELEASED; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) UNRELEASED; urgency=low
+
+ * New upstream release from sf.net
+ * Import to debian-science repository at git.debian.org
+ * control:
+ - Update to standards-version 3.7.3
+ - Add Vcs-* fields pointing to git.debian.org
+ - Improve descriptions
+ * Convert copyright to (pseudo) machine readable format, audit source
+ * Fix categories in .desktop file
+ * Change Section to Science/Engineering in .doc-base and menu files
+ * rules: do not ignore errors on clean target, add dh_desktop call
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 05 Aug 2008 18:58:07 +0200
+
+freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) UNRELEASED; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) UNRELEASED; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) UNRELEASED; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) UNRELEASED; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) UNRELEASED; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) UNRELEASED; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) UNRELEASED; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+
--- freecad-0.9.2646.orig/debian/control
+++ freecad-0.9.2646/debian/control
@@ -0,0 +1,66 @@
+Source: freecad
+Section: science
+Priority: extra
+Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Teemu Ikonen <tpikonen@gmail.com>, "Adam C. Powell, IV" <hazelsct@debian.org>
+Vcs-Browser: http://git.debian.org/?p=debian-science/packages/freecad.git
+Vcs-Git: git://git.debian.org/git/debian-science/packages/freecad.git
+Homepage: http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
+Build-Depends: debhelper (>= 7), autotools-dev,
+ libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
+ libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
+ libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
+ libboost-python-dev, python-dev, python-opencv, python-support,
+ libqt4-dev, libxt-dev, libxext-dev, libxmu-dev, libxi-dev, libx11-dev,
+ libcoin60-dev, libsoqt4-dev (>= 1.4.2~svn20090224), libgl1-mesa-dev,
+ libgts-bin, libgts-dev, libcv-dev, zlib1g-dev, libxerces-c2-dev,
+ libopencascade-foundation-dev, libopencascade-modeling-dev,
+ libswscale-dev, libblas-dev, libatlas-headers, python-cxx-dev, libzipios++-dev
+Standards-Version: 3.8.3
+
+Package: freecad
+Architecture: any
+Section: science
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, python-pivy, python-qt4
+Suggests: freecad-doc, python-opencv
+Description: An extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, freecad (= ${binary:Version})
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the libtool .la files, headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+Package: freecad-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, qt4-dev-tools
+Description: FreeCAD documentation
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the FreeCAD documentation.
+ .
+ The documentation is provided in Qt's new help format;
+ the new help format version can be viewed in conjunction with the Qt Assistant
+ found in the qt4-dev-tools package.
+
--- freecad-0.9.2646.orig/debian/freecad.desktop
+++ freecad-0.9.2646/debian/freecad.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/FCIcon.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.9.2646.orig/debian/menu
+++ freecad-0.9.2646/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/FCIcon.xpm"
+
--- freecad-0.9.2646.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.9.2646/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>

View File

@@ -0,0 +1,892 @@
--- freecad-0.11.4446.orig/debian/changelog
+++ freecad-0.11.4446/debian/changelog
@@ -0,0 +1,239 @@
+freecad (0.11.4446-1lucid1) lucid; urgency=low
+
+ * New release for Ubuntu 10.04.2 LTS (lucid)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 27 Apr 2011 10:59:21 +0200
+
+freecad (0.11.4446-1lucid1) lucid; urgency=low
+
+ * New release for Ubuntu 10.04.2 LTS (lucid)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 27 Apr 2011 10:47:15 +0200
+
+freecad (0.11.3729.dfsg-2) unstable; urgency=low
+
+ * Add gfortran and libopencascade-visualization-dev to BD
+ to fix FTBFS (closes: #622694)
+ * Add libqtwebkit-dev to BD (closes: #618241)
+ * Delete quilt from BD and corresponding changes in rules.
+ * Add description to freecad-occ650.patch
+ * Delete encoding string from .desktop
+ * Fix some spelling errors, pointed out by lintian.
+
+ -- Anton Gladky <gladky.anton@gmail.com> Thu, 14 Apr 2011 10:23:25 +0100
+
+freecad (0.11.3729.dfsg-1) unstable; urgency=low
+
+ [ Denis Barbier ]
+ * Merge OpenCASCADE 6.5.0 compatibility patch (closes: #617545).
+
+ [ Adam C. Powell, IV ]
+ * New upstream (closes: #622213, #618241).
+ * Changed to source format 3.0 (quilt).
+ * Added patch target which forces autotools to run, and automake and autoconf
+ are now in Build-Depends (closes: #607181).
+ * Set aside src/Build/Version.h to prevent build problems.
+ * Does not install .la files (closes: #621298).
+ * Boost 1.46 compatibility patch (closes: #621877).
+ * Set aside files which autotools modifies so clean works.
+ * Added libtool to Build-Depends (thanks: PICCA Frédéric-Emmanuel).
+ * Bumped Standards-Version, no changes needed.
+
+ -- "Adam C. Powell, IV" <hazelsct@debian.org> Tue, 12 Apr 2011 23:40:30 -0400
+
+freecad (0.10.3247.dfsg-2) unstable; urgency=low
+
+ * control:
+ - Update to standars-version 3.9.0.
+ - Remove libblas-dev, libatlas-dev from build-deps.
+ * Add debian/shlibs.local file containing the the correct binary dep
+ to libsoqt4-20 (closes: #575239).
+ * copyright: Add a verbatim copy of Tiddlywiki BSD license. Fixes
+ the lintian warning copyright-refers-to-deprecated-bsd-license-file.
+ * Add kFreeBSD portability fixes. Thanks to Petr Salinger
+ <Petr.Salinger@seznam.cz> for the patch (closes: #592461).
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 18 Aug 2010 19:34:36 +0200
+
+freecad (0.10.3247.dfsg-1) unstable; urgency=low
+
+ * New upstream version (closes: #582627)
+ * Add debian/source/format file with contents "1.0".
+ * Use freecad.xpm as icon in menu and desktop files.
+ * copyright: Add licensing information for new files in this release.
+ * src/Base/Makefile.in, src/Gui/Makefile.in: Do not remove *.tab.c files
+ in make distclean target.
+ * control:
+ - Add build-dep to libeigen2-dev.
+ - Update to standards-version 3.8.4.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 05 Jul 2010 15:07:49 +0200
+
+freecad (0.9.2646.5.dfsg-1) unstable; urgency=low
+
+ * Add 'dfsg' extension to upstream version, upstream sources are unchanged.
+ * Remove libgl1-mesa-dev build-dep, rely on libcoin to pull in GL libraries.
+ * Change build-dep libatlas-headers to libatlas-dev (closes: #577309).
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Fri, 14 May 2010 17:20:35 +0200
+
+freecad (0.9.2646.5-1) unstable; urgency=low
+
+ * New upstream version (closes: #561696).
+ * Added swig to Build-Depends (closes: #563523, #563772).
+ * Removed python-opencv from Build-Depends and Recommends (closes: #560768).
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Mon, 11 Jan 2010 08:48:33 -0500
+
+freecad (0.9.2646.4-1) unstable; urgency=low
+
+ * New upstream version (closes: #559849, #559846).
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Fri, 11 Dec 2009 20:21:32 -0500
+
+freecad (0.9.2646.3-1) unstable; urgency=low
+
+ * New upstream version. Removes TiddlySaver.jar, fixes help problems.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 03 Dec 2009 19:39:27 +0100
+
+freecad (0.9.2646-1) unstable; urgency=low
+
+ [ Werner Mayer ]
+ * New upstream release
+ * In-source copy of PyCXX has been dropped (closes: #547936)
+ * In-source copy of zipios++ has been dropped (closes: #547941)
+ * Change build-dependency on python2.5-dev to python-dev
+ * Add freecad-doc binary package
+ * Remove Suggestion of a chm viewer, suggest freecad-doc instead
+
+ [ Teemu Ikonen ]
+ * Add override to dh_compress
+ * Add versioned build-deb to debhelper (>= 7.0.50)
+ * Add build-deps to libzipios++-dev and python-cxx-dev.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 17 Nov 2009 14:22:00 +0100
+
+freecad (0.8.2237-2) unstable; urgency=low
+
+ * Added libboost-python-dev to Build-Depends (closes: #549738).
+ * Added myself to uploaders list.
+ * Bumped Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Thu, 12 Nov 2009 12:02:42 -0500
+
+freecad (0.8.2237-1) unstable; urgency=low
+
+ * New Upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 16 Jul 2009 18:37:41 +0200
+
+freecad (0.7.1658-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 20 Oct 2008 15:35:58 +0200
+
+freecad (0.7.1514-1) UNRELEASED; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) UNRELEASED; urgency=low
+
+ * New upstream release from sf.net
+ * Import to debian-science repository at git.debian.org
+ * control:
+ - Update to standards-version 3.7.3
+ - Add Vcs-* fields pointing to git.debian.org
+ - Improve descriptions
+ * Convert copyright to (pseudo) machine readable format, audit source
+ * Fix categories in .desktop file
+ * Change Section to Science/Engineering in .doc-base and menu files
+ * rules: do not ignore errors on clean target, add dh_desktop call
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 05 Aug 2008 18:58:07 +0200
+
+freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) UNRELEASED; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) UNRELEASED; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) UNRELEASED; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) UNRELEASED; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) UNRELEASED; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) UNRELEASED; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) UNRELEASED; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+
--- freecad-0.11.4446.orig/debian/shlibs.local
+++ freecad-0.11.4446/debian/shlibs.local
@@ -0,0 +1,2 @@
+libGL 1 libgl1-mesa-glx (>= 7.7.1-1)
+libSoQt4 20 libsoqt4-20 (>= 1.4.2~svn20090224)
--- freecad-0.11.4446.orig/debian/freecad.1
+++ freecad-0.11.4446/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.11.4446.orig/debian/rules
+++ freecad-0.11.4446/debian/rules
@@ -0,0 +1,132 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete Fem Robot Import Inspection
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+patch-stamp:
+ touch $@
+
+configure: autogen.sh patch-stamp
+ dh_testdir
+ #for autotools_mod_file in `find . -name Makefile.in` aclocal.m4 \
+ # configure m4/libtool.m4 m4/ltmain.sh m4/ltoptions.m4 \
+ # m4/ltversion.m4 m4/lt~obsolete.m4; do \
+ # cp -a $$autotools_mod_file $$autotools_mod_file.setaside; \
+ #done
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+ ./configure --with-occ-include=/usr/include/opencascade \
+--with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad --docdir=/usr/share/doc/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+ touch src/Build/Version.h
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+ $(MAKE)
+ touch $@
+
+clean:
+ mv src/Build/Version.h src/Build/Version.h.old
+ dh clean
+ mv src/Build/Version.h.old src/Build/Version.h
+ rm -f build-stamp
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 config.log libtool 71
+ #if [ -e Makefile.in.setaside ]; then \
+ #for autotools_mod_file in `find . -name Makefile.in` aclocal.m4 \
+ # configure m4/libtool.m4 m4/ltmain.sh m4/ltoptions.m4 \
+ # m4/ltversion.m4 m4/lt~obsolete.m4; do \
+ # mv -f $$autotools_mod_file.setaside $$autotools_mod_file; \
+ #done; fi
+ dh clean
+ rm -f patch-stamp
+ #quilt pop -a
+ #rm -rf .pc/
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+ # Remove testing modules we don't want to have in the deb
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/_TEMPLATE_
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/TemplatePyMod
+ # install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/freecad/* usr/share/freecad/
+ #dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_installman debian/freecad.1
+ dh_installchangelogs ChangeLog.txt
+ # install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+ # special treating of PartDesign module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/PartDesign/Scripts/*.py usr/lib/freecad/Mod/PartDesign/Scripts;)
+ # special treating of Draft module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+ # special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+ # install the help system
+ dh_install -pfreecad-doc debian/tmp/freecad/usr/share/doc/* usr/share/doc/
+ touch install-stamp
+
+override_dh_compress:
+ dh_compress -X.qch -X.qhc
+
+override_dh_makeshlibs:
+
+
+binary-indep: build install
+ dh binary-indep
+
+binary-arch: build install
+ dh binary-arch
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.11.4446.orig/debian/menu
+++ freecad-0.11.4446/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/freecad.xpm"
+
--- freecad-0.11.4446.orig/debian/control
+++ freecad-0.11.4446/debian/control
@@ -0,0 +1,66 @@
+Source: freecad
+Section: science
+Priority: extra
+Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Teemu Ikonen <tpikonen@gmail.com>, "Adam C. Powell, IV" <hazelsct@debian.org>, Anton Gladky <gladky.anton@gmail.com>
+Vcs-Browser: http://git.debian.org/?p=debian-science/packages/freecad.git
+Vcs-Git: git://git.debian.org/git/debian-science/packages/freecad.git
+Homepage: http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
+Build-Depends: debhelper (>= 7.0.50~), autotools-dev, libtool, automake,
+ autoconf, libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
+ libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
+ libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
+ libboost-python-dev, python-dev, python-support,
+ libqt4-dev, libxt-dev, libxext-dev, libxmu-dev, libxi-dev, libx11-dev,
+ libcoin60-dev, libsoqt4-dev (>= 1.4.2~svn20090224), libeigen2-dev, libeigen3-dev, libgl1-mesa-dev,
+ zlib1g-dev, libxerces-c2-dev, libopencascade-foundation-dev, libopencascade-modeling-dev,
+ libopencascade-visualization-dev, python-cxx-dev, libswscale-dev,
+ libzipios++-dev, swig, gfortran
+Standards-Version: 3.8.4
+
+Package: freecad
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+Recommends: python-pivy
+Suggests: freecad-doc
+Description: Extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, freecad (= ${binary:Version})
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+Package: freecad-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, qt4-dev-tools
+Description: FreeCAD documentation
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the FreeCAD documentation.
+ .
+ The documentation is provided in Qt's new help format;
+ the new help format version can be viewed in conjunction with the Qt Assistant
+ found in the qt4-dev-tools package.
+
--- freecad-0.11.4446.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.11.4446/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>
--- freecad-0.11.4446.orig/debian/compat
+++ freecad-0.11.4446/debian/compat
@@ -0,0 +1 @@
+7
--- freecad-0.11.4446.orig/debian/freecad.links
+++ freecad-0.11.4446/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.11.4446.orig/debian/freecad.desktop
+++ freecad-0.11.4446/debian/freecad.desktop
@@ -0,0 +1,18 @@
+[Desktop Entry]
+Version=1.0
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/freecad.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.11.4446.orig/debian/watch
+++ freecad-0.11.4446/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://sf.net/free-cad/freecad_(.+)\.orig\.tar\.gz
--- freecad-0.11.4446.orig/debian/freecad-doc.doc-base
+++ freecad-0.11.4446/debian/freecad-doc.doc-base
@@ -0,0 +1,18 @@
+Document: freecad-development-documentation
+Title: FreeCAD development documentation
+Author: FreeCAD developers
+Abstract: FreeCAD is a general purpose Open Source 3D
+ CAD/MCAD/CAx/CAE/PLM modeler, aimed directly at mechanical engineering
+ and product design but also fits in a wider range of uses around
+ engineering, such as architecture or other engineering specialties.
+ It is a feature-based parametric modeler with a modular software
+ architecture which makes it easy to provide additional functionality
+ without modifying the core system.
+Section: Science/Engineering
+
+Format: HTML
+Index: /usr/share/doc/freecad/Start_Page.html
+Files: /usr/share/doc/freecad/*.q*
+
+Format: PDF
+Files: /usr/share/doc/freecad/kr_16.pdf.gz /usr/share/doc/freecad/kr_210_2.pdf.gz /usr/share/doc/freecad/kr_500_2.pdf.gz
--- freecad-0.11.4446.orig/debian/copyright
+++ freecad-0.11.4446/debian/copyright
@@ -0,0 +1,275 @@
+Format-Specification: http://dep.debian.net/deps/dep5/
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+X-Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+X-Packaged-Date: 2006-09-26_16:55:15+02:00
+Source: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2009 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2008 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Jeremy Conlin, Thomas Klimpel, Fabien Dekeyser,
+ Quoc-Cuong Pham, Si-Lab b.v.b.a., Joerg Walter
+License: other-boost-1.0
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/lapack.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/std_valarray.hpp
+Copyright: 2003 Toon Knapen, Kresimir Fresl, Karl Meerbergen
+License: other
+ * Permission to copy, modify, use and distribute this software
+ * for any non-commercial or commercial purpose is granted provided
+ * that this license appear on all copies of the software source code.
+ *
+ * Authors assume no responsibility whatsoever for its use and makes
+ * no guarantees about its quality, correctness or reliability.
+ *
+ * KF acknowledges the support of the Faculty of Civil Engineering,
+ * University of Zagreb, Croatia.
+
+Files: src/Base/Base64.*
+Copyright: 2004-2008 Rene Nyffenegger <rene.nyffenegger@adp-gmbh.ch>
+License: other
+ This source code is provided 'as-is', without any express or implied
+ warranty. In no event will the author be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this source code must not be misrepresented; you must not
+ claim that you wrote the original source code. If you use this source code
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original source code.
+ .
+ 3. This notice may not be removed or altered from any source distribution.
+
+Files: src/Base/fdstream.hpp
+Copyright: 2001 Nicolai M. Josuttis
+License: other
+ Permission to copy, use, modify, sell and distribute this software
+ is granted provided this copyright notice appears in all copies.
+ This software is provided "as is" without express or implied
+ warranty, and with no claim as to its suitability for any purpose.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyTools.*
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2004-2009 UnaMesa Association
+License: BSD
+ Copyright (c) UnaMesa Association 2004-2009
+ .
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ .
+ Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ .
+ Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ .
+ Neither the name of the UnaMesa Association nor the names of its
+ contributors may be used to endorse or promote products derived from this
+ software without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS
+ IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2009 John Resig
+License: GPL-2 or MIT
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in '/usr/share/common-licenses/GPL-2'.
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2009 The Dojo Foundation, http://sizzlejs.com/
+License: GPL-2 or MIT or BSD
+
+Files: src/Gui/iisTaskPanel/src/*
+Copyright: http://www.ii-system.com
+License: LGPL
+
+Files: src/Mod/Draft/*
+Copyright: Yorik van Havre, Werner Mayer, Martin Burbaum
+License: GPL-2+
+
+Files: src/Mod/Draft/draftlibs/dxf*
+Copyright: 2005-2008 Ed Blake, Remigiusz Fiedler, Stani Michiels
+License: GPL-2+
+
+Files: src/Mod/Draft/WorkingPlane.py
+Copyright: 2009-2010 Ken Cline <cline@frii.com>
+License: GPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: LGPL
+
+Files: src/Mod/Image/App/ImageBase.*, src/Mod/Image/Gui/GLImageBox.*,
+ src/Mod/Image/Gui/ImageView.*, src/Mod/Image/Gui/XpmImages.h
+Copyright: 2004 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller <tam@cs.lth.se>
+License: other
+ tritritest.h has no licensing information, but Tomas Moller replied
+ the following, when asked about it:
+ .
+ The code is is free to use for anyone and any projects, but I give no
+ warranties.
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Part/App/edgecluster.*
+Copyright: 2010 Joachim Zettler <Joachim.Zettler@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Sketcher/App/sketchflat/*
+Copyright: 2008 Jonathan Westhues
+License: GPL-3+
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in '/usr/share/common-licenses/GPL-3'.
+
+Files: src/Mod/Sketcher/App/sketchsolve_cp/*
+Copyright: 2009 Jonathan George
+License: BSD
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Mod/Part/MakeBottle.py, src/Tools/*
+Copyright: 2002-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: GPL-2+
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+
+Files: debian/*
+Copyright: 2007-2009 Werner Mayer <wmayer@users.sourceforge.net>,
+ Teemu Ikonen <tpikonen@gmail.com>
+License: LGPL-2+
--- freecad-0.11.4446.orig/debian/source/format
+++ freecad-0.11.4446/debian/source/format
@@ -0,0 +1 @@
+1.0
--- freecad-0.11.4446.orig/debian/source/lintian-overrides
+++ freecad-0.11.4446/debian/source/lintian-overrides
@@ -0,0 +1,3 @@
+# Lintian thinks uploader Adam Powell's name violates policy
+freecad source: uploader-address-missing "Adam C. Powell
+freecad source: uploader-not-full-name IV"

View File

@@ -0,0 +1,740 @@
--- freecad-0.11.3729.orig/debian/changelog
+++ freecad-0.11.3729/debian/changelog
@@ -0,0 +1,172 @@
+freecad (0.11.3729-1lucid1) lucid; urgency=low
+
+ * New release for Ubuntu 10.04.1 LTS (lucid)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 14 Nov 2010 18:09:17 +0100
+
+freecad (0.10.3139-1lucid1) lucid; urgency=low
+
+ * New release for Ubuntu 10.04 LTS (lucid)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 Apr 2010 23:43:06 +0200
+
+freecad (0.10.3139-1) unstable; urgency=low
+
+ * New upstream version (closes: #561696).
+ * Added swig to Build-Depends (closes: #563523, #563772).
+ * Removed python-opencv from Build-Depends and Recommends (closes: #560768).
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Mon, 11 Jan 2010 08:48:33 -0500
+
+freecad (0.9.2646.4-1) unstable; urgency=low
+
+ * New upstream version (closes: #559849, #559846).
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Fri, 11 Dec 2009 20:21:32 -0500
+
+freecad (0.9.2646.3-1) unstable; urgency=low
+
+ * New upstream version. Removes TiddlySaver.jar, fixes help problems.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 03 Dec 2009 19:39:27 +0100
+
+freecad (0.9.2646-1) unstable; urgency=low
+
+ [ Werner Mayer ]
+ * New upstream release
+ * In-source copy of PyCXX has been dropped (closes: #547936)
+ * In-source copy of zipios++ has been dropped (closes: #547941)
+ * Change build-dependency on python2.5-dev to python-dev
+ * Add freecad-doc binary package
+ * Remove Suggestion of a chm viewer, suggest freecad-doc instead
+
+ [ Teemu Ikonen ]
+ * Add override to dh_compress
+ * Add versioned build-deb to debhelper (>= 7.0.50)
+ * Add build-deps to libzipios++-dev and python-cxx-dev.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 17 Nov 2009 14:22:00 +0100
+
+freecad (0.8.2237-2) unstable; urgency=low
+
+ * Added libboost-python-dev to Build-Depends (closes: #549738).
+ * Added myself to uploaders list.
+ * Bumped Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Thu, 12 Nov 2009 12:02:42 -0500
+
+freecad (0.8.2237-1) unstable; urgency=low
+
+ * New Upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 16 Jul 2009 18:37:41 +0200
+
+freecad (0.7.1658-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 20 Oct 2008 15:35:58 +0200
+
+freecad (0.7.1514-1) UNRELEASED; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) UNRELEASED; urgency=low
+
+ * New upstream release from sf.net
+ * Import to debian-science repository at git.debian.org
+ * control:
+ - Update to standards-version 3.7.3
+ - Add Vcs-* fields pointing to git.debian.org
+ - Improve descriptions
+ * Convert copyright to (pseudo) machine readable format, audit source
+ * Fix categories in .desktop file
+ * Change Section to Science/Engineering in .doc-base and menu files
+ * rules: do not ignore errors on clean target, add dh_desktop call
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 05 Aug 2008 18:58:07 +0200
+
+freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) UNRELEASED; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) UNRELEASED; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) UNRELEASED; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) UNRELEASED; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) UNRELEASED; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) UNRELEASED; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) UNRELEASED; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+
--- freecad-0.11.3729.orig/debian/shlibs.local
+++ freecad-0.11.3729/debian/shlibs.local
@@ -0,0 +1 @@
+libGL 1 libgl1-mesa-glx (>= 7.7.1-1)
--- freecad-0.11.3729.orig/debian/freecad.1
+++ freecad-0.11.3729/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.11.3729.orig/debian/rules
+++ freecad-0.11.3729/debian/rules
@@ -0,0 +1,109 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete Fem Robot
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure: autogen.sh
+ dh_testdir
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+ ./configure --with-occ-include=/usr/include/opencascade \
+--with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad --docdir=/usr/share/doc/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+ $(MAKE)
+ touch $@
+
+clean:
+ dh clean
+ rm -f build-stamp
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 config.log libtool
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+ # Remove testing modules we don't want to have in the deb
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/_TEMPLATE_
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/TemplatePyMod
+ # install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/freecad/* usr/share/freecad/
+ #dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_installman debian/freecad.1
+ dh_installchangelogs ChangeLog.txt
+ # install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+ # special treating of PartDesign module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/PartDesign/Scripts/*.py usr/lib/freecad/Mod/PartDesign/Scripts;)
+ # special treating of Draft module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.svg usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.ui usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+ # special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.la usr/lib/freecad/lib
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+ # install the help system
+ dh_install -pfreecad-doc debian/tmp/freecad/usr/share/doc/* usr/share/doc/
+ touch install-stamp
+
+override_dh_compress:
+ dh_compress -X.qch -X.qhc
+
+binary-indep: build install
+ dh binary-indep
+
+binary-arch: build install
+ dh binary-arch
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.11.3729.orig/debian/menu
+++ freecad-0.11.3729/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/freecad.xpm"
+
--- freecad-0.11.3729.orig/debian/control
+++ freecad-0.11.3729/debian/control
@@ -0,0 +1,67 @@
+Source: freecad
+Section: science
+Priority: extra
+Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Teemu Ikonen <tpikonen@gmail.com>, "Adam C. Powell, IV" <hazelsct@debian.org>
+Vcs-Browser: http://git.debian.org/?p=debian-science/packages/freecad.git
+Vcs-Git: git://git.debian.org/git/debian-science/packages/freecad.git
+Homepage: http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
+Build-Depends: debhelper (>= 7.0.50~), autotools-dev,
+ libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
+ libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
+ libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
+ libboost-python-dev, python-dev, python-support,
+ libqt4-dev, libxt-dev, libxext-dev, libxmu-dev, libxi-dev, libx11-dev,
+ libcoin60-dev, libsoqt4-dev (>= 1.4.2~svn20090224), libgl1-mesa-dev,
+ zlib1g-dev, libxerces-c2-dev, libopencascade-visualization-dev,
+ libopencascade-foundation-dev, libopencascade-modeling-dev, python-cxx-dev,
+ libswscale-dev, libzipios++-dev, swig, libeigen2-dev, libeigen3-dev
+Standards-Version: 3.8.4
+
+Package: freecad
+Architecture: any
+Section: science
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+Recommends: python-pivy
+Suggests: freecad-doc
+Description: An extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, freecad (= ${binary:Version})
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the libtool .la files, headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+Package: freecad-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, qt4-dev-tools
+Description: FreeCAD documentation
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the FreeCAD documentation.
+ .
+ The documentation is provided in Qt's new help format;
+ the new help format version can be viewed in conjunction with the Qt Assistant
+ found in the qt4-dev-tools package.
+
--- freecad-0.11.3729.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.11.3729/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>
--- freecad-0.11.3729.orig/debian/compat
+++ freecad-0.11.3729/debian/compat
@@ -0,0 +1 @@
+7
--- freecad-0.11.3729.orig/debian/freecad.links
+++ freecad-0.11.3729/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.11.3729.orig/debian/freecad.desktop
+++ freecad-0.11.3729/debian/freecad.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/freecad.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.11.3729.orig/debian/watch
+++ freecad-0.11.3729/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://sf.net/free-cad/freecad_(.+)\.orig\.tar\.gz
--- freecad-0.11.3729.orig/debian/copyright
+++ freecad-0.11.3729/debian/copyright
@@ -0,0 +1,237 @@
+Format-Specification: http://dep.debian.net/deps/dep5/
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+X-Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+X-Packaged-Date: 2006-09-26_16:55:15+02:00
+Source: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2009 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2008 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Jeremy Conlin, Thomas Klimpel, Fabien Dekeyser,
+ Quoc-Cuong Pham, Si-Lab b.v.b.a., Joerg Walter
+License: other-boost-1.0
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/lapack.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/std_valarray.hpp
+Copyright: 2003 Toon Knapen, Kresimir Fresl, Karl Meerbergen
+License: other
+ * Permission to copy, modify, use and distribute this software
+ * for any non-commercial or commercial purpose is granted provided
+ * that this license appear on all copies of the software source code.
+ *
+ * Authors assume no responsibility whatsoever for its use and makes
+ * no guarantees about its quality, correctness or reliability.
+ *
+ * KF acknowledges the support of the Faculty of Civil Engineering,
+ * University of Zagreb, Croatia.
+
+Files: src/Base/Base64.*
+Copyright: 2004-2008 Rene Nyffenegger <rene.nyffenegger@adp-gmbh.ch>
+License: other
+ This source code is provided 'as-is', without any express or implied
+ warranty. In no event will the author be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this source code must not be misrepresented; you must not
+ claim that you wrote the original source code. If you use this source code
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original source code.
+ .
+ 3. This notice may not be removed or altered from any source distribution.
+
+Files: src/Base/fdstream.hpp
+Copyright: 2001 Nicolai M. Josuttis
+License: other
+ Permission to copy, use, modify, sell and distribute this software
+ is granted provided this copyright notice appears in all copies.
+ This software is provided "as is" without express or implied
+ warranty, and with no claim as to its suitability for any purpose.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyTools.*
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2004-2009 UnaMesa Association
+License: BSD
+ On Debian systems, the complete text of the BSD license
+ can be found in `/usr/share/common-licenses/BSD'.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2009 John Resig
+License: GPL-2 or MIT
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in '/usr/share/common-licenses/GPL-2'.
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2009 The Dojo Foundation, http://sizzlejs.com/
+License: GPL-2 or MIT or BSD
+
+Files: src/Gui/iisTaskPanel/src/*
+Copyright: http://www.ii-system.com
+License: LGPL
+
+Files: src/Mod/Draft/*
+Copyright: Yorik van Havre, Werner Mayer, Martin Burbaum
+License: GPL-2+
+
+Files: src/Mod/Draft/draftlibs/dxf*
+Copyright: 2005-2008 Ed Blake, Remigiusz Fiedler, Stani Michiels
+License: GPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: LGPL
+
+Files: src/Mod/Image/App/ImageBase.*, src/Mod/Image/Gui/GLImageBox.*,
+ src/Mod/Image/Gui/ImageView.*, src/Mod/Image/Gui/XpmImages.h
+Copyright: 2004 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller <tam@cs.lth.se>
+License: other
+ tritritest.h has no licensing information, but Tomas Moller replied
+ the following, when asked about it:
+ .
+ The code is is free to use for anyone and any projects, but I give no
+ warranties.
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Sketcher/App/sketchflat/*
+Copyright: 2008 Jonathan Westhues
+License: GPL-3+
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in '/usr/share/common-licenses/GPL-3'.
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Mod/Part/MakeBottle.py, src/Tools/*
+Copyright: 2002-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: GPL-2+
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+
+Files: debian/*
+Copyright: 2007-2009 Werner Mayer <wmayer@users.sourceforge.net>,
+ Teemu Ikonen <tpikonen@gmail.com>
+License: LGPL-2+
--- freecad-0.11.3729.orig/debian/source/format
+++ freecad-0.11.3729/debian/source/format
@@ -0,0 +1 @@
+1.0

View File

@@ -0,0 +1,886 @@
--- freecad-0.12.4484.orig/debian/changelog
+++ freecad-0.12.4484/debian/changelog
@@ -0,0 +1,272 @@
+freecad (0.12.4484-1natty1) natty; urgency=low
+
+ * New release for Ubuntu 11.04 (natty)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 11 May 2011 22:55:03 +0200
+
+freecad (0.11.3729.dfsg-2) unstable; urgency=low
+
+ * Add gfortran and libopencascade-visualization-dev to BD
+ to fix FTBFS (closes: #622694)
+ * Add libqtwebkit-dev to BD (closes: #618241)
+ * Delete quilt from BD and corresponding changes in rules.
+ * Add description to freecad-occ650.patch
+ * Delete encoding string from .desktop
+ * Fix some spelling errors, pointed out by lintian.
+
+ -- Anton Gladky <gladky.anton@gmail.com> Thu, 14 Apr 2011 10:23:25 +0100
+
+freecad (0.11.3729.dfsg-1) unstable; urgency=low
+
+ [ Denis Barbier ]
+ * Merge OpenCASCADE 6.5.0 compatibility patch (closes: #617545).
+
+ [ Adam C. Powell, IV ]
+ * New upstream (closes: #622213, #618241).
+ * Changed to source format 3.0 (quilt).
+ * Added patch target which forces autotools to run, and automake and autoconf
+ are now in Build-Depends (closes: #607181).
+ * Set aside src/Build/Version.h to prevent build problems.
+ * Does not install .la files (closes: #621298).
+ * Boost 1.46 compatibility patch (closes: #621877).
+ * Set aside files which autotools modifies so clean works.
+ * Added libtool to Build-Depends (thanks: PICCA Frédéric-Emmanuel).
+ * Bumped Standards-Version, no changes needed.
+
+ -- "Adam C. Powell, IV" <hazelsct@debian.org> Tue, 12 Apr 2011 23:40:30 -0400
+
+freecad (0.10.3247.dfsg-2ubuntu3) natty; urgency=low
+
+ * Fix build failure with ld --as-needed.
+
+ -- Matthias Klose <doko@ubuntu.com> Wed, 15 Dec 2010 01:12:39 +0100
+
+freecad (0.10.3247.dfsg-2ubuntu2) natty; urgency=low
+
+ * Rebuild with python 2.7 as the python default.
+
+ -- Matthias Klose <doko@ubuntu.com> Thu, 09 Dec 2010 16:46:45 +0000
+
+freecad (0.10.3247.dfsg-2ubuntu1) natty; urgency=low
+
+ * Merge from debian unstable. Remaining changes:
+ - build on libqtwebkit-dev for qtwebkit transition
+
+ -- Bhavani Shankar <bhavi@ubuntu.com> Wed, 20 Oct 2010 08:40:53 +0530
+
+freecad (0.10.3247.dfsg-2) unstable; urgency=low
+
+ * control:
+ - Update to standars-version 3.9.0.
+ - Remove libblas-dev, libatlas-dev from build-deps.
+ * Add debian/shlibs.local file containing the the correct binary dep
+ to libsoqt4-20 (closes: #575239).
+ * copyright: Add a verbatim copy of Tiddlywiki BSD license. Fixes
+ the lintian warning copyright-refers-to-deprecated-bsd-license-file.
+ * Add kFreeBSD portability fixes. Thanks to Petr Salinger
+ <Petr.Salinger@seznam.cz> for the patch (closes: #592461).
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 18 Aug 2010 19:34:36 +0200
+
+freecad (0.10.3247.dfsg-1ubuntu2) maverick; urgency=low
+
+ * Rebuild on libqtwebkit-dev for qtwebkit transition
+
+ -- Jonathan Riddell <jriddell@ubuntu.com> Wed, 21 Jul 2010 10:06:31 +0100
+
+freecad (0.10.3247.dfsg-1ubuntu1) maverick; urgency=low
+
+ * Merge from Debian unstable, remaining changes:
+ - debian/control: Build-Depends on libqt4-webkit-dev due to
+ QtWebKit is no longer part of libqt4-dev (LP: #604078)
+
+ -- Artur Rona <ari-tczew@tlen.pl> Sat, 10 Jul 2010 21:06:47 +0200
+
+freecad (0.10.3247.dfsg-1) unstable; urgency=low
+
+ * New upstream version (closes: #582627)
+ * Add debian/source/format file with contents "1.0".
+ * Use freecad.xpm as icon in menu and desktop files.
+ * copyright: Add licensing information for new files in this release.
+ * src/Base/Makefile.in, src/Gui/Makefile.in: Do not remove *.tab.c files
+ in make distclean target.
+ * control:
+ - Add build-dep to libeigen2-dev.
+ - Update to standards-version 3.8.4.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 05 Jul 2010 15:07:49 +0200
+
+freecad (0.9.2646.5.dfsg-1ubuntu1) maverick; urgency=low
+
+ * Add build-dep on libqt4-webkit-dev to fix FTBFS with Qt 4.7
+
+ -- Scott Kitterman <scott@kitterman.com> Sat, 19 Jun 2010 00:37:12 -0400
+
+freecad (0.9.2646.5.dfsg-1) unstable; urgency=low
+
+ * Add 'dfsg' extension to upstream version, upstream sources are unchanged.
+ * Remove libgl1-mesa-dev build-dep, rely on libcoin to pull in GL libraries.
+ * Change build-dep libatlas-headers to libatlas-dev (closes: #577309).
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Fri, 14 May 2010 17:20:35 +0200
+
+freecad (0.9.2646.5-1) unstable; urgency=low
+
+ * New upstream version (closes: #561696).
+ * Added swig to Build-Depends (closes: #563523, #563772).
+ * Removed python-opencv from Build-Depends and Recommends (closes: #560768).
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Mon, 11 Jan 2010 08:48:33 -0500
+
+freecad (0.9.2646.4-1) unstable; urgency=low
+
+ * New upstream version (closes: #559849, #559846).
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Fri, 11 Dec 2009 20:21:32 -0500
+
+freecad (0.9.2646.3-1) unstable; urgency=low
+
+ * New upstream version. Removes TiddlySaver.jar, fixes help problems.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 03 Dec 2009 19:39:27 +0100
+
+freecad (0.9.2646-1) unstable; urgency=low
+
+ [ Werner Mayer ]
+ * New upstream release
+ * In-source copy of PyCXX has been dropped (closes: #547936)
+ * In-source copy of zipios++ has been dropped (closes: #547941)
+ * Change build-dependency on python2.5-dev to python-dev
+ * Add freecad-doc binary package
+ * Remove Suggestion of a chm viewer, suggest freecad-doc instead
+
+ [ Teemu Ikonen ]
+ * Add override to dh_compress
+ * Add versioned build-deb to debhelper (>= 7.0.50)
+ * Add build-deps to libzipios++-dev and python-cxx-dev.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 17 Nov 2009 14:22:00 +0100
+
+freecad (0.8.2237-2) unstable; urgency=low
+
+ * Added libboost-python-dev to Build-Depends (closes: #549738).
+ * Added myself to uploaders list.
+ * Bumped Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Thu, 12 Nov 2009 12:02:42 -0500
+
+freecad (0.8.2237-1) unstable; urgency=low
+
+ * New Upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 16 Jul 2009 18:37:41 +0200
+
+freecad (0.7.1658-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 20 Oct 2008 15:35:58 +0200
+
+freecad (0.7.1514-1) UNRELEASED; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) UNRELEASED; urgency=low
+
+ * New upstream release from sf.net
+ * Import to debian-science repository at git.debian.org
+ * control:
+ - Update to standards-version 3.7.3
+ - Add Vcs-* fields pointing to git.debian.org
+ - Improve descriptions
+ * Convert copyright to (pseudo) machine readable format, audit source
+ * Fix categories in .desktop file
+ * Change Section to Science/Engineering in .doc-base and menu files
+ * rules: do not ignore errors on clean target, add dh_desktop call
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 05 Aug 2008 18:58:07 +0200
+
+freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) UNRELEASED; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) UNRELEASED; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) UNRELEASED; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) UNRELEASED; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) UNRELEASED; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) UNRELEASED; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) UNRELEASED; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+
--- freecad-0.12.4484.orig/debian/freecad.links
+++ freecad-0.12.4484/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.12.4484.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.12.4484/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>
--- freecad-0.12.4484.orig/debian/watch
+++ freecad-0.12.4484/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://sf.net/free-cad/freecad_(.+)\.orig\.tar\.gz
--- freecad-0.12.4484.orig/debian/shlibs.local
+++ freecad-0.12.4484/debian/shlibs.local
@@ -0,0 +1,2 @@
+libGL 1 libgl1-mesa-glx (>= 7.7.1-1)
+libSoQt4 20 libsoqt4-20 (>= 1.4.2~svn20090224)
--- freecad-0.12.4484.orig/debian/freecad.1
+++ freecad-0.12.4484/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.12.4484.orig/debian/rules
+++ freecad-0.12.4484/debian/rules
@@ -0,0 +1,113 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete Fem Robot Import Inspection Arch
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure: autogen.sh
+ dh_testdir
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+ ./configure --with-occ-include=/usr/include/opencascade \
+--with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad --docdir=/usr/share/doc/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+ $(MAKE)
+ touch $@
+
+clean:
+ dh clean
+ rm -f build-stamp
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 config.log libtool
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+ # Remove testing modules we don't want to have in the deb
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/_TEMPLATE_
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/TemplatePyMod
+ # install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/freecad/* usr/share/freecad/
+ #dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_installman debian/freecad.1
+ dh_installchangelogs ChangeLog.txt
+ # install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+ # special treating of PartDesign module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/PartDesign/Scripts/*.py usr/lib/freecad/Mod/PartDesign/Scripts;)
+ # special treating of Draft module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+ # special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+ # special treating of Arch module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Arch/*.py usr/lib/freecad/Mod/Arch
+
+ # install the help system
+ dh_install -pfreecad-doc debian/tmp/freecad/usr/share/doc/* usr/share/doc/
+ touch install-stamp
+
+override_dh_compress:
+ dh_compress -X.qch -X.qhc
+
+override_dh_makeshlibs:
+
+
+binary-indep: build install
+ dh binary-indep
+
+binary-arch: build install
+ dh binary-arch
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.12.4484.orig/debian/freecad.desktop
+++ freecad-0.12.4484/debian/freecad.desktop
@@ -0,0 +1,18 @@
+[Desktop Entry]
+Version=1.0
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/freecad.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.12.4484.orig/debian/menu
+++ freecad-0.12.4484/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/freecad.xpm"
+
--- freecad-0.12.4484.orig/debian/copyright
+++ freecad-0.12.4484/debian/copyright
@@ -0,0 +1,275 @@
+Format-Specification: http://dep.debian.net/deps/dep5/
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+X-Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+X-Packaged-Date: 2006-09-26_16:55:15+02:00
+Source: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2009 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2008 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Jeremy Conlin, Thomas Klimpel, Fabien Dekeyser,
+ Quoc-Cuong Pham, Si-Lab b.v.b.a., Joerg Walter
+License: other-boost-1.0
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/lapack.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/std_valarray.hpp
+Copyright: 2003 Toon Knapen, Kresimir Fresl, Karl Meerbergen
+License: other
+ * Permission to copy, modify, use and distribute this software
+ * for any non-commercial or commercial purpose is granted provided
+ * that this license appear on all copies of the software source code.
+ *
+ * Authors assume no responsibility whatsoever for its use and makes
+ * no guarantees about its quality, correctness or reliability.
+ *
+ * KF acknowledges the support of the Faculty of Civil Engineering,
+ * University of Zagreb, Croatia.
+
+Files: src/Base/Base64.*
+Copyright: 2004-2008 Rene Nyffenegger <rene.nyffenegger@adp-gmbh.ch>
+License: other
+ This source code is provided 'as-is', without any express or implied
+ warranty. In no event will the author be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this source code must not be misrepresented; you must not
+ claim that you wrote the original source code. If you use this source code
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original source code.
+ .
+ 3. This notice may not be removed or altered from any source distribution.
+
+Files: src/Base/fdstream.hpp
+Copyright: 2001 Nicolai M. Josuttis
+License: other
+ Permission to copy, use, modify, sell and distribute this software
+ is granted provided this copyright notice appears in all copies.
+ This software is provided "as is" without express or implied
+ warranty, and with no claim as to its suitability for any purpose.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyTools.*
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2004-2009 UnaMesa Association
+License: BSD
+ Copyright (c) UnaMesa Association 2004-2009
+ .
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ .
+ Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ .
+ Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ .
+ Neither the name of the UnaMesa Association nor the names of its
+ contributors may be used to endorse or promote products derived from this
+ software without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS
+ IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2009 John Resig
+License: GPL-2 or MIT
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in '/usr/share/common-licenses/GPL-2'.
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: src/Doc/Start_Page.html
+Copyright: 2009 The Dojo Foundation, http://sizzlejs.com/
+License: GPL-2 or MIT or BSD
+
+Files: src/Gui/iisTaskPanel/src/*
+Copyright: http://www.ii-system.com
+License: LGPL
+
+Files: src/Mod/Draft/*
+Copyright: Yorik van Havre, Werner Mayer, Martin Burbaum
+License: GPL-2+
+
+Files: src/Mod/Draft/draftlibs/dxf*
+Copyright: 2005-2008 Ed Blake, Remigiusz Fiedler, Stani Michiels
+License: GPL-2+
+
+Files: src/Mod/Draft/WorkingPlane.py
+Copyright: 2009-2010 Ken Cline <cline@frii.com>
+License: GPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: LGPL
+
+Files: src/Mod/Image/App/ImageBase.*, src/Mod/Image/Gui/GLImageBox.*,
+ src/Mod/Image/Gui/ImageView.*, src/Mod/Image/Gui/XpmImages.h
+Copyright: 2004 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller <tam@cs.lth.se>
+License: other
+ tritritest.h has no licensing information, but Tomas Moller replied
+ the following, when asked about it:
+ .
+ The code is is free to use for anyone and any projects, but I give no
+ warranties.
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Part/App/edgecluster.*
+Copyright: 2010 Joachim Zettler <Joachim.Zettler@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Sketcher/App/sketchflat/*
+Copyright: 2008 Jonathan Westhues
+License: GPL-3+
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in '/usr/share/common-licenses/GPL-3'.
+
+Files: src/Mod/Sketcher/App/sketchsolve_cp/*
+Copyright: 2009 Jonathan George
+License: BSD
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Mod/Part/MakeBottle.py, src/Tools/*
+Copyright: 2002-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: GPL-2+
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+
+Files: debian/*
+Copyright: 2007-2009 Werner Mayer <wmayer@users.sourceforge.net>,
+ Teemu Ikonen <tpikonen@gmail.com>
+License: LGPL-2+
--- freecad-0.12.4484.orig/debian/compat
+++ freecad-0.12.4484/debian/compat
@@ -0,0 +1 @@
+7
--- freecad-0.12.4484.orig/debian/control
+++ freecad-0.12.4484/debian/control
@@ -0,0 +1,67 @@
+Source: freecad
+Section: science
+Priority: extra
+Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Teemu Ikonen <tpikonen@gmail.com>, "Adam C. Powell, IV" <hazelsct@debian.org>, Anton Gladky <gladky.anton@gmail.com>
+Vcs-Browser: http://git.debian.org/?p=debian-science/packages/freecad.git
+Vcs-Git: git://git.debian.org/git/debian-science/packages/freecad.git
+Homepage: http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
+Build-Depends: debhelper (>= 7.0.50~), autotools-dev, libtool, automake,
+ autoconf, libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
+ libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
+ libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
+ libboost-python-dev, python-dev, python-support,
+ libqt4-dev, libxt-dev, libxext-dev, libxmu-dev, libxi-dev, libx11-dev,
+ libcoin60-dev, libsoqt4-dev (>= 1.4.2~svn20090224), libeigen2-dev, libeigen3-dev, libgl1-mesa-dev,
+ zlib1g-dev, libxerces-c2-dev, libopencascade-foundation-dev,
+ libopencascade-modeling-dev, libopencascade-ocaf-dev,
+ libopencascade-visualization-dev, python-cxx-dev, libswscale-dev,
+ libzipios++-dev, swig, gfortran, libqtwebkit-dev
+Standards-Version: 3.9.1
+
+Package: freecad
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+Recommends: python-pivy
+Suggests: freecad-doc
+Description: Extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, freecad (= ${binary:Version})
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+Package: freecad-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, qt4-dev-tools
+Description: FreeCAD documentation
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the FreeCAD documentation.
+ .
+ The documentation is provided in Qt's new help format;
+ the new help format version can be viewed in conjunction with the Qt Assistant
+ found in the qt4-dev-tools package.
+
--- freecad-0.12.4484.orig/debian/source/lintian-overrides
+++ freecad-0.12.4484/debian/source/lintian-overrides
@@ -0,0 +1,3 @@
+# Lintian thinks uploader Adam Powell's name violates policy
+freecad source: uploader-address-missing "Adam C. Powell
+freecad source: uploader-not-full-name IV"
--- freecad-0.12.4484.orig/debian/source/format
+++ freecad-0.12.4484/debian/source/format
@@ -0,0 +1 @@
+1.0

View File

@@ -0,0 +1,682 @@
--- freecad-0.9.2646.orig/debian/compat
+++ freecad-0.9.2646/debian/compat
@@ -0,0 +1 @@
+7
--- freecad-0.9.2646.orig/debian/control
+++ freecad-0.9.2646/debian/control
@@ -0,0 +1,67 @@
+Source: freecad
+Section: science
+Priority: extra
+Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Teemu Ikonen <tpikonen@gmail.com>, "Adam C. Powell, IV" <hazelsct@debian.org>
+Vcs-Browser: http://git.debian.org/?p=debian-science/packages/freecad.git
+Vcs-Git: git://git.debian.org/git/debian-science/packages/freecad.git
+Homepage: http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
+Build-Depends: debhelper (>= 7.0.50~), autotools-dev,
+ libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
+ libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
+ libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
+ libboost-python-dev, python-dev, python-opencv, python-support,
+ libqt4-dev, libxt-dev, libxext-dev, libxmu-dev, libxi-dev, libx11-dev,
+ libcoin60-dev, libsoqt4-dev (>= 1.4.2~svn20090224), libgl1-mesa-dev,
+ libgts-bin, libgts-dev, libcv-dev, zlib1g-dev, libxerces-c2-dev,
+ libopencascade-foundation-dev, libopencascade-modeling-dev, python-cxx-dev,
+ libswscale-dev, libblas-dev, libatlas-headers, libzipios++-dev
+Standards-Version: 3.8.3
+
+Package: freecad
+Architecture: any
+Section: science
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+Recommends: python-pivy
+Suggests: freecad-doc, python-opencv
+Description: An extensible Open Source CAx program (alpha)
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ .
+ Currently, FreeCAD can import and display CAD models in IGES, STEP, and
+ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats.
+ Editing and modeling features are currently somewhat limited.
+
+Package: freecad-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, freecad (= ${binary:Version})
+Description: FreeCAD development files
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the libtool .la files, headers and symlinks necessary to
+ develop modules for FreeCAD.
+
+Package: freecad-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}, qt4-dev-tools
+Description: FreeCAD documentation
+ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python.
+ It features some key concepts like macro recording, workbenches, ability
+ to run as a server and dynamically loadable application extensions and
+ it is designed to be platform independent.
+ For more details see http://sourceforge.net/projects/free-cad
+ .
+ This package contains the FreeCAD documentation.
+ .
+ The documentation is provided in Qt's new help format;
+ the new help format version can be viewed in conjunction with the Qt Assistant
+ found in the qt4-dev-tools package.
+
--- freecad-0.9.2646.orig/debian/rules
+++ freecad-0.9.2646/debian/rules
@@ -0,0 +1,109 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure: autogen.sh
+ dh_testdir
+ chmod u+x autogen.sh
+ ./autogen.sh
+
+config.status: configure
+ dh_testdir
+ ./configure --with-occ-include=/usr/include/opencascade \
+--with-occ-lib=/usr/lib \
+--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+--prefix=/usr/lib/freecad --mandir=/usr/share/man \
+--infodir=/usr/share/info --datadir=/usr/share/freecad \
+--includedir=/usr/include/freecad --docdir=/usr/share/doc/freecad \
+CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+build: build-stamp
+
+build-stamp: config.status
+ dh_testdir
+ $(MAKE)
+ touch $@
+
+clean:
+ dh clean
+ rm -f build-stamp
+ find -name '*.pyc' | xargs rm -f
+ find -name 'moc_*.cpp' | xargs rm -f
+ find -name '*.lo' | xargs rm -f
+ find -name '*.deps' | xargs rm -rf
+ find -name '*.libs' | xargs rm -rf
+ rm -f stamp-h1 config.log libtool
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
+ # Remove testing modules we don't want to have in the deb
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/_TEMPLATE_
+ rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/TemplatePyMod
+ # install the core system
+ dh_install -pfreecad debian/tmp/freecad/usr/share/freecad/* usr/share/freecad/
+ #dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+ dh_install debian/freecad.desktop usr/share/applications
+ dh_installman debian/freecad.1
+ dh_installchangelogs ChangeLog.txt
+ # install the modules
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
+ # special treating of Draft module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.svg usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.ui usr/lib/freecad/Mod/Draft
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
+ # special treating of Test module
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
+ dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
+
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.la usr/lib/freecad/lib
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
+ $(foreach MODULE,$(MODULES), \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
+ dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
+
+ # install the help system
+ dh_install -pfreecad-doc debian/tmp/freecad/usr/share/doc/* usr/share/doc/
+ touch install-stamp
+
+override_dh_compress:
+ dh_compress -X.qch -X.qhc
+
+binary-indep: build install
+ dh binary-indep
+
+binary-arch: build install
+ dh binary-arch
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- freecad-0.9.2646.orig/debian/copyright
+++ freecad-0.9.2646/debian/copyright
@@ -0,0 +1,221 @@
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
+Upstream-Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-By: Werner Mayer <wmayer@users.sourceforge.net>
+Packaged-Date: 2006-09-26_16:55:15+02:00
+Original-Source-Location: http://sourceforge.net/projects/free-cad
+
+Files: *
+Copyright: 2001-2009 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: LGPL-2+
+ This package is free software; 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; either
+ version 2 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, US
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'.
+
+Files: src/3rdParty/boost/numeric/bindings/*
+Copyright: 2002-2008 Kresimir Fresl, Karl Meerbergen, Toon Knapen,
+ Andreas Kloeckner, Jeremy Conlin, Thomas Klimpel, Fabien Dekeyser,
+ Quoc-Cuong Pham, Si-Lab b.v.b.a., Joerg Walter
+License: other-boost-1.0
+ Boost Software License - Version 1.0 - August 17th, 2003
+ .
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: src/3rdParty/boost/numeric/bindings/lapack/lapack.hpp,
+ src/3rdParty/boost/numeric/bindings/traits/std_valarray.hpp
+Copyright: 2003 Toon Knapen, Kresimir Fresl, Karl Meerbergen
+License: other
+ * Permission to copy, modify, use and distribute this software
+ * for any non-commercial or commercial purpose is granted provided
+ * that this license appear on all copies of the software source code.
+ *
+ * Authors assume no responsibility whatsoever for its use and makes
+ * no guarantees about its quality, correctness or reliability.
+ *
+ * KF acknowledges the support of the Faculty of Civil Engineering,
+ * University of Zagreb, Croatia.
+
+Files: src/Base/Base64.*
+Copyright: 2004-2008 Rene Nyffenegger <rene.nyffenegger@adp-gmbh.ch>
+License: other
+ This source code is provided 'as-is', without any express or implied
+ warranty. In no event will the author be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this source code must not be misrepresented; you must not
+ claim that you wrote the original source code. If you use this source code
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ .
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original source code.
+ .
+ 3. This notice may not be removed or altered from any source distribution.
+
+Files: src/Base/fdstream.hpp
+Copyright: 2001 Nicolai M. Josuttis
+License: other
+ Permission to copy, use, modify, sell and distribute this software
+ is granted provided this copyright notice appears in all copies.
+ This software is provided "as is" without express or implied
+ warranty, and with no claim as to its suitability for any purpose.
+
+Files: src/Base/gzstream.*
+Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner
+License: LGPL-2.1+
+
+Files: src/Base/PyTools.*
+Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates.
+License: other
+ Permission to use, copy, modify, and distribute this software
+ for any purpose and without fee is hereby granted. This software
+ is provided on an as is basis, without warranties of any kind.
+
+Files: src/Gui/iisTaskPanel/src/*
+Copyright: http://www.ii-system.com
+License: LGPL
+
+Files: src/Mod/Draft/*
+Copyright: Yorik van Havre, Werner Mayer, Martin Burbaum
+License: GPL-2+
+
+Files: src/Mod/Draft/draftlibs/dxf*
+Copyright: 2005-2008 Ed Blake, Remigiusz Fiedler, Stani Michiels
+License: GPL-2+
+
+Files: src/Base/BoundBox.h, src/Base/Swap.*, src/Base/Vector3D.*,
+ src/Base/ViewProj.h, src/Base/Matrix.*, src/Base/Tools2D.*,
+ src/Mod/Mesh/App/Core/*
+Copyright: 2005 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Projection.cpp, src/Mod/Mesh/App/Core/Projection.h,
+ src/Mod/Mesh/App/Core/Triangulation.cpp, src/Mod/Mesh/App/Core/Triangulation.h
+Copyright: 2005 Werner Mayer <werner.wm.mayer@gmx.de>
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/Builder.h, src/Mod/Mesh/App/Core/SetOperations.*
+Copyright: 2005 Berthold Grupp
+License: LGPL-2+
+
+Files: src/Mod/Mesh/BuildRegularGeoms.py
+Copyright: 2005 Berthold Grupp
+License: LGPL
+
+Files: src/Mod/Image/App/ImageBase.*, src/Mod/Image/Gui/GLImageBox.*,
+ src/Mod/Image/Gui/ImageView.*, src/Mod/Image/Gui/XpmImages.h
+Copyright: 2004 Imetric 3D GmbH
+License: LGPL-2+
+
+Files: src/Mod/Mesh/App/Core/tritritest.h
+Copyright: 1997 Tomas Moller <tam@cs.lth.se>
+License: other
+ tritritest.h has no licensing information, but Tomas Moller replied
+ the following, when asked about it:
+ .
+ The code is is free to use for anyone and any projects, but I give no
+ warranties.
+
+Files: src/Mod/Mesh/App/WildMagic4/*
+Copyright: 1998-2007 David Eberly http://www.geometrictools.com
+License: LGPL-2.1+
+
+Files: src/Mod/Raytracing/App/resources/*
+Copyright: 2005 Georg Wiora <georg.wiora@quarkbox.de>,
+ Juergen Riegel <juergen.riegel@web.de>
+License: LGPL-2+
+
+Files: src/Mod/Sketcher/App/sketchflat/*
+Copyright: 2008 Jonathan Westhues
+License: GPL-3+
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in '/usr/share/common-licenses/GPL-3'.
+
+Files: src/Mod/Test/unittestgui.py
+Copyright: 1999-2001 Steve Purcell
+License: PSF
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: src/Mod/Part/MakeBottle.py, src/Tools/*
+Copyright: 2002-2008 Jürgen Riegel <juergen.riegel@web.de>,
+ Werner Mayer <wmayer@users.sourceforge.net>
+License: GPL-2+
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in '/usr/share/common-licenses/GPL-2'.
+
+Files: src/Tools/generateBase/generateDS.py
+Copyright: 2003 Dave Kuhlman
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: debian/*
+Copyright: 2007-2009 Werner Mayer <wmayer@users.sourceforge.net>,
+ Teemu Ikonen <tpikonen@gmail.com>
+License: LGPL-2+
--- freecad-0.9.2646.orig/debian/freecad.sharedmimeinfo
+++ freecad-0.9.2646/debian/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-extension-fcstd">
+ <sub-class-of type="application/zip"/>
+ <comment>FreeCAD document files</comment>
+ <glob pattern="*.fcstd"/>
+ </mime-type>
+</mime-info>
--- freecad-0.9.2646.orig/debian/freecad.desktop
+++ freecad-0.9.2646/debian/freecad.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=FreeCAD
+Name[de]=FreeCAD
+Comment=Feature based Parametric Modeler
+Comment[de]=Feature-basierter parametrischer Modellierer
+GenericName=CAD Application
+GenericName[de]=CAD-Anwendung
+Exec=/usr/bin/freecad %F
+Path=/usr/lib/freecad
+Terminal=false
+Type=Application
+Icon=/usr/share/freecad/FCIcon.xpm
+Categories=Graphics;Science;Engineering
+StartupNotify=true
+GenericName[de_DE]=Feature-basierter parametrischer Modellierer
+Comment[de_DE]=Feature-basierter parametrischer Modellierer
+MimeType=application/x-extension-fcstd
--- freecad-0.9.2646.orig/debian/freecad.1
+++ freecad-0.9.2646/debian/freecad.1
@@ -0,0 +1,73 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+freecad \- An extensible Open Source CAx program for Unix/X11
+.SH SYNOPSIS
+.B freecad
+.RI [ options ] " files"
+.br
+.B freecadcmd
+.RI [ options ] " files"
+.SH DESCRIPTION
+.B FreeCAD
+is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
+some key concepts like macro recording, workbenches, ability to run as a
+server and dynamically loadable application extensions and it is designed
+to be platform independent.
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.SH USAGE
+\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of the options supported by \fBfreecad\fR is included below.
+.SS "Generic options"
+.TP
+\fB\-h, \-\-help\fR
+Show summary of options.
+.TP
+\fB\-v, \-\-version\fR
+Show version of program.
+.TP
+\fB\-c, \-\-console\fR
+Start in console mode.
+.TP
+\fB\-\-response\-file\fR \fIarg\fR
+Can be specified with '@name', too.
+
+.SS "Configuration"
+.TP
+\fB\-l, \-\-write\-log\fR
+Write a log file.
+.TP
+\fB\-t, \-\-run\-test\fR \fIarg\fR
+Test level.
+.TP
+\fB\-M, \-\-module\-path\fR \fIarg\fR
+Additional module path.
+.TP
+\fB\-P, \-\-python\-path\fR \fIarg\fR
+Additional Python path.
+.SH SEE ALSO
+To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
+.SH BUGS
+To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
+.SH AUTHOR
+This manual page was written by Werner Mayer.
--- freecad-0.9.2646.orig/debian/watch
+++ freecad-0.9.2646/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://sf.net/free-cad/freecad_(.+)\.orig\.tar\.gz
--- freecad-0.9.2646.orig/debian/menu
+++ freecad-0.9.2646/debian/menu
@@ -0,0 +1,6 @@
+?package(freecad):needs="X11"\
+ section="Applications/Science/Engineering"\
+ title="FreeCAD"\
+ command="/usr/bin/freecad"\
+ icon="/usr/share/freecad/FCIcon.xpm"
+
--- freecad-0.9.2646.orig/debian/freecad.links
+++ freecad-0.9.2646/debian/freecad.links
@@ -0,0 +1,3 @@
+usr/lib/freecad/bin/FreeCAD usr/bin/freecad
+usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
+usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz
--- freecad-0.9.2646.orig/debian/changelog
+++ freecad-0.9.2646/debian/changelog
@@ -0,0 +1,140 @@
+freecad (0.9.2646-1) unstable; urgency=low
+
+ [ Werner Mayer ]
+ * New upstream release
+ * In-source copy of PyCXX has been dropped (closes: #547936)
+ * In-source copy of zipios++ has been dropped (closes: #547941)
+ * Change build-dependency on python2.5-dev to python-dev
+ * Add freecad-doc binary package
+ * Remove Suggestion of a chm viewer, suggest freecad-doc instead
+
+ [ Teemu Ikonen ]
+ * Add override to dh_compress
+ * Add versioned build-deb to debhelper (>= 7.0.50)
+ * Add build-deps to libzipios++-dev and python-cxx-dev.
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 17 Nov 2009 14:22:00 +0100
+
+freecad (0.8.2237-2) unstable; urgency=low
+
+ * Added libboost-python-dev to Build-Depends (closes: #549738).
+ * Added myself to uploaders list.
+ * Bumped Standards-Version.
+
+ -- Adam C. Powell, IV <hazelsct@debian.org> Thu, 12 Nov 2009 12:02:42 -0500
+
+freecad (0.8.2237-1) unstable; urgency=low
+
+ * New Upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 16 Jul 2009 18:37:41 +0200
+
+freecad (0.7.1658-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Mon, 20 Oct 2008 15:35:58 +0200
+
+freecad (0.7.1514-1) UNRELEASED; urgency=low
+
+ * New upstream version
+ * Add more stuff to the copyright file
+ * control: add build-dep to python-central
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Wed, 06 Aug 2008 18:25:02 +0200
+
+freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low
+
+ * Package for Ubuntu 8.04 (Hardy Heron)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 29 May 2008 11:11:20 +0200
+
+freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.10 (Gutsy Gibbon)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 01:54:39 +0200
+
+freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low
+
+ * Backport to Ubuntu 7.04 (Feisty Fawn)
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 24 May 2008 00:09:08 +0200
+
+freecad (0.7.1350-1) UNRELEASED; urgency=low
+
+ * New upstream release from sf.net
+ * Import to debian-science repository at git.debian.org
+ * control:
+ - Update to standards-version 3.7.3
+ - Add Vcs-* fields pointing to git.debian.org
+ - Improve descriptions
+ * Convert copyright to (pseudo) machine readable format, audit source
+ * Fix categories in .desktop file
+ * Change Section to Science/Engineering in .doc-base and menu files
+ * rules: do not ignore errors on clean target, add dh_desktop call
+ -- Teemu Ikonen <tpikonen@gmail.com> Tue, 05 Aug 2008 18:58:07 +0200
+
+freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low
+
+ * New package with fixed self-dependency problem
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 15:34:34 +0200
+
+freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low
+
+ * New debian package for Feisty
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Thu, 22 May 2008 11:04:06 +0200
+
+freecad (0.7.1344-1) UNRELEASED; urgency=low
+
+ * Write patch file to make builds with OpenCASCADE libs inside but with no
+ dependency to libopencascade6.2
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Wed, 21 May 2008 10:06:07 +0200
+
+freecad (0.7.1343-1) UNRELEASED; urgency=low
+
+ * Embed required OpenCASCADE libs into this package as long as no official
+ Debian package is available
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 20 May 2008 00:40:39 +0200
+
+freecad (0.7.1342-1) UNRELEASED; urgency=low
+
+ * Switch to new versioning scheme of OpenCASCADE packages
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 19 May 2008 23:55:31 +0200
+
+freecad (0.7.1316-1) UNRELEASED; urgency=low
+
+ * Support of pivy (Python binding for Coin/SoQt)
+ * Support of PyQt4
+ * General support of SWIG modules
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sat, 26 Apr 2008 13:51:25 +0200
+
+freecad (0.7.1031-1) UNRELEASED; urgency=low
+
+ * Qt4 port finished
+ * Support of Python binding for Qt4
+ * Support of Python binding for Coin
+ * Support of entirely in Python written modules
+ * Added support of model driven architecture for Python binding
+ * Use boost's signal/slot mechanism to update data
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 04 Jan 2008 13:50:37 +0200
+
+freecad (0.7.645-1) UNRELEASED; urgency=low
+
+ * Qt4 port started
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 24 Jul 2007 13:04:37 +0200
+
+freecad (0.6.472-1) UNRELEASED; urgency=low
+
+ * Initial Release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 26 Sep 2006 16:55:15 +0200
+

View File

@@ -0,0 +1,207 @@
--- pivy-0.3.0.orig/interfaces/soqt.i
+++ pivy-0.3.0/interfaces/soqt.i
@@ -78,7 +78,7 @@
%include pivy_common_typemaps.i
/* import the pivy main interface file */
-%import coin.i
+%import(module="pivy") coin.i
/* typemaps to bridge against PyQt */
%typemap(out) QEvent * {
--- pivy-0.3.0.orig/debian/changelog
+++ pivy-0.3.0/debian/changelog
@@ -0,0 +1,5 @@
+pivy (0.3.0-1) unstable; urgency=low
+
+ * Initial release (Closes: #504617)
+
+ -- Teemu Ikonen <tpikonen@gmail.com> Thu, 13 Nov 2008 15:31:51 +0100
--- pivy-0.3.0.orig/debian/rules
+++ pivy-0.3.0/debian/rules
@@ -0,0 +1,62 @@
+#!/usr/bin/make -f
+
+CFLAGS = -Wall -g
+
+build: build-stamp
+build-stamp:
+ dh_testdir
+ python setup.py build
+ touch $@
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp install-stamp
+ python setup.py clean
+ dh_clean
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+ python setup.py install --no-compile --root debian/python-pivy
+ #dh install --after dh_installdirs
+ touch install-stamp
+
+binary-indep: build install
+ #dh binary-indep
+
+binary-arch: build install
+ #dh binary-arch
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+# dh_install
+# dh_installmenu
+# dh_installdebconf
+# dh_installlogrotate
+# dh_installemacsen
+# dh_installpam
+# dh_installmime
+# dh_desktop
+# dh_installinit
+# dh_installcron
+# dh_installinfo
+ dh_installman
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_pycentral
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- pivy-0.3.0.orig/debian/control
+++ pivy-0.3.0/debian/control
@@ -0,0 +1,25 @@
+Source: pivy
+Section: python
+Priority: extra
+Maintainer: Teemu Ikonen <tpikonen@gmail.com>
+Build-Depends: debhelper (>= 6), python-support, python-all-dev,
+ libsoqt4-dev, libcoin40-dev, libsimage-dev, swig
+Standards-Version: 3.8.0
+Homepage: http://pivy.coin3d.org/
+
+Package: python-pivy
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+Provides: ${python:Provides}
+Description: Coin binding for Python
+ Pivy is a Coin binding for Python. Coin is a high-level 3D graphics library
+ with a C++ Application Programming Interface. Coin uses scene-graph data
+ structures to render real-time graphics suitable for mostly all kinds of
+ scientific and engineering visualization applications.
+ Pivy allows:
+ .
+ * Development of Coin applications and extensions in Python
+ * Interactive modification of Coin programs from within the
+ Python interpreter at runtime
+ * Incorporation of Scripting Nodes into the scene graph which
+ are capable of executing Python code and callbacks
--- pivy-0.3.0.orig/debian/compat
+++ pivy-0.3.0/debian/compat
@@ -0,0 +1 @@
+6
--- pivy-0.3.0.orig/debian/pyversions
+++ pivy-0.3.0/debian/pyversions
@@ -0,0 +1 @@
+2.4-
--- pivy-0.3.0.orig/debian/pycompat
+++ pivy-0.3.0/debian/pycompat
@@ -0,0 +1 @@
+2
--- pivy-0.3.0.orig/debian/docs
+++ pivy-0.3.0/debian/docs
@@ -0,0 +1,6 @@
+NEWS
+README
+HACKING
+THANKS
+docs/ruby-inventor.txt
+
--- pivy-0.3.0.orig/debian/watch
+++ pivy-0.3.0/debian/watch
@@ -0,0 +1,10 @@
+# See uscan(1) for format
+
+# Compulsory line, this is a version 3 file
+version=3
+
+# <Webpage URL> <string match>
+http://pivy.coin3d.org/download/pivy Pivy-(.*)\.tar\.gz
+
+# Uncomment to examine a Webserver directory
+#http://www.example.com/pub/pivy-(.*)\.tar\.gz
--- pivy-0.3.0.orig/debian/copyright
+++ pivy-0.3.0/debian/copyright
@@ -0,0 +1,58 @@
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
+Upstream-Author: Tamer Fahmy <tamer@tammura.at>
+Packaged-By: Teemu Ikonen <tpikonen@gmail.com>
+Original-Source-Location: http://pivy.coin3d.org/download/pivy/releases/0.3.0/Pivy-0.3.0.tar.gz
+
+Files: *
+Copyright: 2002-2005 Tamer Fahmy <tamer@tammura.at>
+License: BSD-3
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+ * Neither the name of the copyright holder nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Files: scons/*
+Copyright: 2001, 2002, 2003, 2004 The SCons Foundation
+License: other
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: debian/*
+Copyright: 2008 Teemu Ikonen <tpikonen@gmail.com>
+License: BSD-3

View File

@@ -0,0 +1,181 @@
--- pythonocc-0.2.0.orig/src/environment.py
+++ pythonocc-0.2.0/src/environment.py
@@ -68,8 +68,8 @@
SWIG_FILES_PATH_MODULAR = os.path.join(os.getcwd(),'SWIG_src_modular_linux_darwin')
os.environ['CC'] = 'g++'
os.environ['CPP'] = 'g++'
- OCC_INC = '/usr/local/inc' # Ubuntu 8.04 Hardy default installation path for headers
- OCC_LIB = '/usr/local/lib' # Ubuntu 8.04 Hardy default installation path for libraries
+ OCC_INC = '/usr/include/opencascade' # Ubuntu 8.04 Hardy default installation path for headers
+ OCC_LIB = '/usr/lib' # Ubuntu 8.04 Hardy default installation path for libraries
SALOME_GEOM_INC = os.path.join(os.getcwd(),'..','ThirdPart','SalomeGeometry','inc')
SALOME_GEOM_LIB = os.path.join(os.getcwd(),'..','ThirdPart','SalomeGeometry','win32','lib')
GCC_XML_PATH = '/usr/bin' # Ubuntu 8.04 Hardy installation path for gccxml
--- pythonocc-0.2.0.orig/src/setup.py
+++ pythonocc-0.2.0/src/setup.py
@@ -167,19 +167,19 @@
#
# OpenCascade libs
#
-libraries = ['BinLPlugin', 'BinPlugin', 'BinXCAFPlugin', 'FWOSPlugin', 'mscmd', 'PTKernel',\
+libraries = ['BinLPlugin', 'BinPlugin', 'BinXCAFPlugin', 'FWOSPlugin', 'PTKernel',\
'StdLPlugin', 'StdPlugin', 'TKAdvTools', 'TKBin', 'TKBinL', 'TKBinTObj', 'TKBinXCAF',\
- 'TKBO', 'TKBool', 'TKBRep', 'TKCAF', 'TKCDF', 'TKCDLFront', 'TKCPPClient', 'TKCPPExt',\
- 'TKCPPIntExt', 'TKCPPJini', 'TKCSFDBSchema', 'TKDCAF', 'TKDraw', 'TKernel',\
- 'TKFeat', 'TKFillet', 'TKG2d', 'TKG3d', 'TKGeomAlgo', 'TKGeomBase', 'TKHLR', 'TKIDLFront',\
+ 'TKBO', 'TKBool', 'TKBRep', 'TKCAF', 'TKCDF', \
+ 'TKernel',\
+ 'TKFeat', 'TKFillet', 'TKG2d', 'TKG3d', 'TKGeomAlgo', 'TKGeomBase', 'TKHLR',\
'TKIGES', 'TKjcas','TKLCAF', 'TKMath', 'TKMesh', 'TKMeshVS', 'TKNIS', 'TKOffset',\
'TKOpenGl', 'TKPCAF', 'TKPLCAF', 'TKPrim', 'TKPShape', 'TKService', 'TKShapeSchema',\
'TKShHealing', 'TKStdLSchema', 'TKStdSchema', 'TKSTEP', 'TKSTEP209', 'TKSTEPAttr',\
- 'TKSTEPBase', 'TKSTL', 'TKTCPPExt', 'TKTObj', 'TKTObjDRAW', 'TKTopAlgo', 'TKTopTest',\
- 'TKV2d', 'TKV3d', 'TKViewerTest', 'TKVRML', 'TKWOK', 'TKWOKTcl', 'TKXCAF', 'TKXCAFSchema',\
- 'TKXDEDRAW', 'TKXDEIGES', 'TKXDESTEP', 'TKXMesh', 'TKXml', 'TKXmlL', 'TKXmlTObj',\
- 'TKXmlXCAF', 'TKXSBase', 'TKXSDRAW', 'wokcmd', 'wokdeliverysteps', 'wokdfltsteps',\
- 'wokobjssteps', 'wokorbixsteps', 'woksteps', 'woktoolscmd', 'wokutilscmd', 'XCAFPlugin',\
+ 'TKSTEPBase', 'TKSTL', 'TKTObj', 'TKTObjDRAW', 'TKTopAlgo',\
+ 'TKV2d', 'TKV3d', 'TKVRML', 'TKXCAF', 'TKXCAFSchema',\
+ 'TKXDEIGES', 'TKXDESTEP', 'TKXMesh', 'TKXml', 'TKXmlL', 'TKXmlTObj',\
+ 'TKXmlXCAF', 'TKXSBase',\
+ 'XCAFPlugin',\
'XmlLPlugin', 'XmlPlugin', 'XmlXCAFPlugin']
# Find the lib in OCC_LIB path and add it to the LIBS list
LIBS = []
@@ -298,4 +298,4 @@
if GENERATE_SWIG:
print "%i exported classes"%SWIG_generator.nb_exported_classes
final_time = time.time()
-print final_time-init_time
\ No newline at end of file
+print final_time-init_time
--- pythonocc-0.2.0.orig/debian/changelog
+++ pythonocc-0.2.0/debian/changelog
@@ -0,0 +1,6 @@
+pythonocc (0.2.0-1) unstable; urgency=low
+
+ * Initial release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Tue, 12 Apr 2009 14:20:27 +0100
+
--- pythonocc-0.2.0.orig/debian/rules
+++ pythonocc-0.2.0/debian/rules
@@ -0,0 +1,76 @@
+#!/usr/bin/make -f
+
+CFLAGS = -Wall -g
+
+configure:
+ chmod 755 src/Display/OCCViewer.py
+ chmod 755 src/Display/wxDisplay.py
+ chmod 755 src/Display/wxSamplesGui.py
+ chmod 755 Utils/Image.py
+ chmod 644 gpl.txt
+ chmod 644 src/AUTHORS
+
+build: build-stamp
+build-stamp: configure
+ dh_testdir
+ cd src && python setup.py build
+ touch $@
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp install-stamp
+ cd src && python setup.py clean
+ dh_clean
+ rm -rf src/build
+ rm -rf src/OCC
+ find -name '*.pyc' | xargs rm -rf
+ cd src/SWIG_src_modular_linux_darwin && find -name '*_wrap.cpp' | xargs rm -rf
+ cd src/Misc && find -name '*_wrap.cpp' | xargs rm -rf
+ cd src/Visualization && find -name '*_wrap.cpp' | xargs rm -rf
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+ cd src && python setup.py install --no-compile --root ../debian/python-occ
+ #dh install --after dh_installdirs
+ touch install-stamp
+
+binary-indep: build install
+ #dh binary-indep
+
+binary-arch: build install
+ #dh binary-arch
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+# dh_install
+# dh_installmenu
+# dh_installdebconf
+# dh_installlogrotate
+# dh_installemacsen
+# dh_installpam
+# dh_installmime
+# dh_desktop
+# dh_installinit
+# dh_installcron
+# dh_installinfo
+ dh_installman
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_pycentral
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- pythonocc-0.2.0.orig/debian/control
+++ pythonocc-0.2.0/debian/control
@@ -0,0 +1,17 @@
+Source: pythonocc
+Section: python
+Priority: extra
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Build-Depends: debhelper (>= 6), python, python-central, python-support, swig, libopencascade-dev
+Standards-Version: 3.7.3
+XS-Python-Version: current
+Homepage: http://pythonocc.org/
+
+Package: python-occ
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+XB-Python-Version: ${python:Versions}
+Provides: ${python:Provides}
+Description: Python binding for OpenCASCADE
+ pythonOCC is Python binding for OpenCASCADE.
+
--- pythonocc-0.2.0.orig/debian/compat
+++ pythonocc-0.2.0/debian/compat
@@ -0,0 +1 @@
+6
--- pythonocc-0.2.0.orig/debian/pyversions
+++ pythonocc-0.2.0/debian/pyversions
@@ -0,0 +1 @@
+2.4-
--- pythonocc-0.2.0.orig/debian/pycompat
+++ pythonocc-0.2.0/debian/pycompat
@@ -0,0 +1 @@
+2
--- pythonocc-0.2.0.orig/debian/copyright
+++ pythonocc-0.2.0/debian/copyright
@@ -0,0 +1,7 @@
+Files: *
+Copyright: 2008 Thomas Paviot <thomas.paviot@free.fr>
+License: GPL-3
+ .
+ On Debian systems, the complete text of the GNU General Public
+ License version 3 can be found in `/usr/share/common-licenses/GPL-3'.
+

View File

@@ -0,0 +1,179 @@
--- pythonocc-0.3.0.orig/src/wrapper/environment.py
+++ pythonocc-0.3.0/src/wrapper/environment.py
@@ -126,8 +126,8 @@
OCC_INC = os.path.join(OCC_ROOT,'inc')
OCC_LIB = os.path.join(OCC_ROOT,'lib')
else:
- OCC_INC = '/usr/local/inc' # Ubuntu 8.04 Hardy default installation path for headers
- OCC_LIB = '/usr/local/lib' # Ubuntu 8.04 Hardy default installation path for libraries
+ OCC_INC = '/usr/include/opencascade' # Ubuntu 8.04 Hardy default installation path for headers
+ OCC_LIB = '/usr/lib' # Ubuntu 8.04 Hardy default installation path for libraries
SALOME_GEOM_LIB = '/opt/SalomeGeometry/lib'
GCC_XML_PATH = '/usr/bin' # Ubuntu 8.04 Hardy installation path for gccxml
PYGCCXML_DEFINES = ['HAVE_CONFIG_H','HAVE_LIMITS_H','CSFDB','OCC_CONVERT_SIGNALS','LIN','LININTEL','_GNU_SOURCE=1']
--- pythonocc-0.3.0.orig/src/setup.py
+++ pythonocc-0.3.0/src/setup.py
@@ -172,18 +172,18 @@
#
# OpenCascade libs
#
-libraries = ['BinLPlugin', 'BinPlugin', 'BinXCAFPlugin', 'FWOSPlugin', 'mscmd', 'PTKernel',\
+libraries = ['BinLPlugin', 'BinPlugin', 'BinXCAFPlugin', 'FWOSPlugin', 'PTKernel',\
'StdLPlugin', 'StdPlugin', 'TKAdvTools', 'TKBin', 'TKBinL', 'TKBinTObj', 'TKBinXCAF',\
- 'TKBO', 'TKBool', 'TKBRep', 'TKCAF', 'TKCDF', 'TKCDLFront', 'TKCPPClient', 'TKCPPExt',\
- 'TKCPPIntExt', 'TKCPPJini', 'TKCSFDBSchema', 'TKDCAF', 'TKDraw', 'TKernel',\
- 'TKFeat', 'TKFillet', 'TKG2d', 'TKG3d', 'TKGeomAlgo', 'TKGeomBase', 'TKHLR', 'TKIDLFront',\
+ 'TKBO', 'TKBool', 'TKBRep', 'TKCAF', 'TKCDF',\
+ 'TKernel',\
+ 'TKFeat', 'TKFillet', 'TKG2d', 'TKG3d', 'TKGeomAlgo', 'TKGeomBase', 'TKHLR',\
'TKIGES', 'TKjcas','TKLCAF', 'TKMath', 'TKMesh', 'TKMeshVS', 'TKNIS', 'TKOffset',\
'TKOpenGl', 'TKPCAF', 'TKPLCAF', 'TKPrim', 'TKPShape', 'TKService', 'TKShapeSchema',\
'TKShHealing', 'TKStdLSchema', 'TKStdSchema', 'TKSTEP', 'TKSTEP209', 'TKSTEPAttr',\
- 'TKSTEPBase', 'TKSTL', 'TKTCPPExt', 'TKTObj', 'TKTObjDRAW', 'TKTopAlgo', 'TKTopTest',\
- 'TKV2d', 'TKV3d', 'TKViewerTest', 'TKVRML', 'TKWOK', 'TKWOKTcl', 'TKXCAF', 'TKXCAFSchema',\
- 'TKXDEDRAW', 'TKXDEIGES', 'TKXDESTEP', 'TKXMesh', 'TKXml', 'TKXmlL', 'TKXmlTObj',\
- 'TKXmlXCAF', 'TKXSBase', 'TKXSDRAW', 'XCAFPlugin',\
+ 'TKSTEPBase', 'TKSTL', 'TKTObj', 'TKTObjDRAW', 'TKTopAlgo',\
+ 'TKV2d', 'TKV3d', 'TKVRML', 'TKXCAF', 'TKXCAFSchema',\
+ 'TKXDEIGES', 'TKXDESTEP', 'TKXMesh', 'TKXml', 'TKXmlL', 'TKXmlTObj',\
+ 'TKXmlXCAF', 'TKXSBase',\
'XmlLPlugin', 'XmlPlugin', 'XmlXCAFPlugin']
# Find the lib in OCC_LIB path and add it to the LIBS list
LIBS = []
--- pythonocc-0.3.0.orig/debian/changelog
+++ pythonocc-0.3.0/debian/changelog
@@ -0,0 +1,6 @@
+pythonocc (0.3.0-1) unstable; urgency=low
+
+ * Initial release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Mon, 24 Aug 2009 12:41:48 +0200
+
--- pythonocc-0.3.0.orig/debian/rules
+++ pythonocc-0.3.0/debian/rules
@@ -0,0 +1,80 @@
+#!/usr/bin/make -f
+
+CFLAGS = -Wall -g
+
+configure:
+ chmod 755 src/addons/Display/OCCViewer.py
+ chmod 755 src/addons/Display/wxDisplay.py
+ chmod 755 src/addons/Display/wxSamplesGui.py
+ chmod 755 src/addons/Display/wxSamplesGui2d.py
+ chmod 755 src/addons/Utils/DataExchange/STL.py
+ chmod 755 src/addons/Utils/DataExchange/STEP.py
+ chmod 755 src/addons/Utils/Common.py
+ chmod 755 src/addons/Utils/Image.py
+ #chmod 644 src/AUTHORS
+
+build: build-stamp
+build-stamp: configure
+ dh_testdir
+ cd src && python setup.py build
+ touch $@
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp install-stamp
+ cd src && python setup.py clean
+ dh_clean
+ rm -rf src/build
+ rm -rf src/OCC
+ find -name '*.pyc' | xargs rm -rf
+ cd src/wrapper && find -name '*.pyc' | xargs rm -rf
+ cd src/wrapper/Misc && find -name '*_wrap.cpp' | xargs rm -rf
+ cd src/wrapper/SWIG/linux_darwin && find -name '*_wrap.cpp' | xargs rm -rf
+ cd src/wrapper/Visualization && find -name '*_wrap.cpp' | xargs rm -rf
+
+install: build install-stamp
+install-stamp:
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+ cd src && python setup.py install --no-compile --root ../debian/python-occ
+ #dh install --after dh_installdirs
+ touch install-stamp
+
+binary-indep: build install
+ #dh binary-indep
+
+binary-arch: build install
+ #dh binary-arch
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+# dh_install
+# dh_installmenu
+# dh_installdebconf
+# dh_installlogrotate
+# dh_installemacsen
+# dh_installpam
+# dh_installmime
+# dh_desktop
+# dh_installinit
+# dh_installcron
+# dh_installinfo
+ dh_installman
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_pycentral
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- pythonocc-0.3.0.orig/debian/control
+++ pythonocc-0.3.0/debian/control
@@ -0,0 +1,20 @@
+Source: pythonocc
+Section: python
+Priority: extra
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Build-Depends: debhelper (>= 6), python, python-central, python-support, swig, libopencascade-dev, salomegeom-dev
+Standards-Version: 3.7.3
+XS-Python-Version: current
+Homepage: http://pythonocc.org/
+
+Package: python-occ
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
+XB-Python-Version: ${python:Versions}
+Provides: ${python:Provides}
+Description: A framework for agile CAD development
+ PythonOCC is a Python wrapper module for the
+ OpenCascade library. It contains python functions and classes
+ that will allow you to fully utilitize the OpenCascade library.
+ This version is built against OpenCascade 6.3.0.
+
--- pythonocc-0.3.0.orig/debian/compat
+++ pythonocc-0.3.0/debian/compat
@@ -0,0 +1 @@
+6
--- pythonocc-0.3.0.orig/debian/pyversions
+++ pythonocc-0.3.0/debian/pyversions
@@ -0,0 +1 @@
+2.4-
--- pythonocc-0.3.0.orig/debian/pycompat
+++ pythonocc-0.3.0/debian/pycompat
@@ -0,0 +1 @@
+2
--- pythonocc-0.3.0.orig/debian/copyright
+++ pythonocc-0.3.0/debian/copyright
@@ -0,0 +1,7 @@
+Files: *
+Copyright: 2008 Thomas Paviot <thomas.paviot@free.fr>
+License: GPL-3
+ .
+ On Debian systems, the complete text of the GNU General Public
+ License version 3 can be found in `/usr/share/common-licenses/GPL-3'.
+

View File

@@ -0,0 +1,299 @@
--- salomegeom-4.1.4.orig/adm/lin/Makefile.am
+++ salomegeom-4.1.4/adm/lin/Makefile.am
@@ -2,10 +2,10 @@
# geomdir = ./
# copy some files
-targetdir = $(prefix)
-dist_target_DATA = LICENCE.lgpl
+#targetdir = $(datadir)
+#dist_target_DATA = LICENCE.lgpl
-resourcedir = $(prefix)/resources
+resourcedir = $(datadir)/resources
dist_resource_DATA = $(srcdir)/resources/GUID.txt $(srcdir)/resources/ImportExport $(srcdir)/resources/Resources $(srcdir)/resources/ShHealing
@@ -16,7 +16,7 @@
AM_CPPFLAGS = -I$(CASROOT)/inc -I$(srcdir)/$(geomdir)inc/ -I$(srcdir)/$(geomdir)src/GEOMAlgo -I$(srcdir)/$(geomdir)src/BlockFix -I$(srcdir)/$(geomdir)src/GEOM -I$(srcdir)/$(geomdir)src/NMTTools -I$(srcdir)/$(geomdir)src/NMTDS
# set library names
-lib_LTLIBRARIES = libExchangeCSFDB.la libArchimede.la libNMTDS.la libNMTTools.la libGEOMAlgo.la libGEOMImpl.la libGEOM.la libExchangeBREP.la libExchangeIGES.la libExchangeSTEP.la libExchangeSTL.la libExchangeVRML.la libPartition.la libShHealOper.la libSketcher.la
+lib_LTLIBRARIES = libExchangeCSFDB.la libArchimede.la libNMTDS.la libNMTTools.la libGEOMAlgo.la libGEOM.la libShHealOper.la libExchangeBREP.la libExchangeIGES.la libExchangeSTEP.la libExchangeSTL.la libExchangeVRML.la libPartition.la libSketcher.la libGEOMImpl.la
# set global linker flags
AM_LDFLAGS = -version-info 1:0:0
@@ -24,24 +24,24 @@
uninstall-local:
-rm -rf $(DESTDIR)$(libdir)
-rm -rf $(DESTDIR)$(includedir)
- -rm -rf $(DESTDIR)$(prefix)/resources
- -rm $(DESTDIR)$(prefix)/env_geom.sh
+ -rm -rf $(DESTDIR)$(datadir)/resources
+ -rm $(DESTDIR)$(datadir)/env_geom.sh
install-exec-local:
- test -z "$(DESTDIR)$(prefix)" || $(mkdir_p) "$(DESTDIR)$(prefix)"
- @echo "#!/bin/bash" > $(DESTDIR)$(prefix)/env_geom.sh
- @echo "export GEOMROOT="$(prefix) >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "export CSF_ResourcesDefaults="$(prefix)/resources >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "if [ -z "LD_LIBRARY_PATH" ];" >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "then LD_LIBRARY_PATH="$(libdir)";" >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "else LD_LIBRARY_PATH="$(libdir)":\$$LD_LIBRARY_PATH;" >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "fi" >> $(DESTDIR)$(prefix)/env_geom.sh
- chmod a+x $(DESTDIR)$(prefix)/env_geom.sh
- test -z "$(DESTDIR)$(prefix)/resources" || $(mkdir_p) "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/GUID.txt "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/ImportExport "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/Resources "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/ShHealing "$(DESTDIR)$(prefix)/resources"
+ test -z "$(DESTDIR)$(datadir)" || $(mkdir_p) "$(DESTDIR)$(datadir)"
+ @echo "#!/bin/bash" > $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "export GEOMROOT="$(prefix) >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "export CSF_ResourcesDefaults="$(datadir)/resources >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "if [ -z "LD_LIBRARY_PATH" ];" >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "then LD_LIBRARY_PATH="$(libdir)";" >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "else LD_LIBRARY_PATH="$(libdir)":\$$LD_LIBRARY_PATH;" >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "fi" >> $(DESTDIR)$(datadir)/env_geom.sh
+ chmod a+x $(DESTDIR)$(datadir)/env_geom.sh
+ test -z "$(DESTDIR)$(datadir)/resources" || $(mkdir_p) "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/GUID.txt "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/ImportExport "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/Resources "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/ShHealing "$(DESTDIR)$(datadir)/resources"
# set ARCHIMDE sources
libArchimede_la_SOURCES = $(srcdir)/$(geomdir)src/Archimede/Archimede_VolumeSection.cpp
@@ -581,6 +581,26 @@
# libShHealOper_la_LDFLAGS = -version-info 0:0:0
# libSketcher_la_LDFLAGS = -version-info 0:0:0
+libArchimede_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKGeomAlgo -lTKGeomBase -lTKG3d -lTKMesh
+libExchangeBREP_la_LIBADD = -lTKMath -lTKernel -lTKBRep
+libExchangeCSFDB_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKPShape -lTKShapeSchema -lPTKernel
+libExchangeIGES_la_LIBADD = -lTKMath -lTKernel -lTKXSBase -lTKBRep -lTKIGES
+libExchangeSTEP_la_LIBADD = -lTKMath -lTKernel -lTKXSBase -lTKBRep -lTKSTEP
+libExchangeSTL_la_LIBADD = -lTKernel -lTKSTL
+libExchangeVRML_la_LIBADD = -lTKernel -lTKVRML
+libNMTDS_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBO
+libNMTTools_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBO -lTKG2d -lTKG3d -lTKGeomAlgo -lTKGeomBase -lTKTopAlgo -lNMTDS
+libGEOMAlgo_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBool -lTKBO -lTKG2d -lTKG3d -lTKGeomAlgo \
+ -lTKGeomBase -lTKTopAlgo -lTKMesh -lTKShHealing -lNMTDS -lNMTTools
+libGEOM_la_LIBADD = -lTKMath -lTKernel -lTKXSBase -lTKBRep -lTKCAF -lTKCDF -lTKLCAF -lTKXSBase \
+ -lTKAdvTools -lTKG2d
+libGEOMImpl_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKTopAlgo -lTKCAF -lTKOffset -lTKPrim -lTKShHealing \
+ -lTKBool -lTKBO -lTKMesh -lTKG2d -lTKG3d -lTKFillet -lTKGeomAlgo -lTKGeomBase -lTKLCAF \
+ -lGEOMAlgo -lGEOM -lArchimede -lShHealOper -lSketcher -ldl
+libPartition_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBool -lTKG2d -lTKG3d -lTKTopAlgo -lTKGeomAlgo -lTKGeomBase -lTKOffset
+libShHealOper_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBool -lTKShHealing -lTKTopAlgo -lTKG2d -lTKG3d -lTKGeomAlgo -lTKGeomBase -lTKLCAF
+libSketcher_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKTopAlgo -lTKG2d -lTKGeomAlgo
+
# include files to be copied to installdir/inc
include_HEADERS = $(srcdir)/$(geomdir)inc/Archimede_VolumeSection.hxx \
$(srcdir)/$(geomdir)inc/BlockFix_BlockFixAPI.hxx \
--- salomegeom-4.1.4.orig/debian/changelog
+++ salomegeom-4.1.4/debian/changelog
@@ -0,0 +1,6 @@
+salomegeom (4.1.4-5) unstable; urgency=low
+
+ * Initial release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 23 Aug 2009 17:12:19 +0200
+
--- salomegeom-4.1.4.orig/debian/rules
+++ salomegeom-4.1.4/debian/rules
@@ -0,0 +1,129 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+BUILD_DIR = adm/lin
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure:
+ chmod u-x resources/GUID.txt
+ chmod u-x resources/ImportExport
+ chmod u-x resources/Resources
+ chmod u-x resources/ShHealing
+ chmod u-x resources/ShHealingFullSet
+ cd $(BUILD_DIR) && \
+ autoreconf --install
+
+config.status: configure
+ dh_testdir
+# Add here commands to configure the package.
+ cd $(BUILD_DIR) && \
+ ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+ --prefix=/usr --includedir=/usr/include/salomegeom \
+ --libdir=/usr/lib --datadir=/usr/share/salomegeom \
+ LDFLAGS="-Wl,-z,defs -L/usr/lib" \
+ CXXFLAGS="$(CXXFLAGS) -I/usr/include/opencascade"
+
+build: build-links build-stamp
+
+build-links:
+ dh_testdir
+ cd $(BUILD_DIR) && \
+ ln -s ../../inc inc && \
+ ln -s ../../resources resources && \
+ ln -s ../../src src
+
+build-stamp: config.status
+ dh_testdir
+
+# Add here commands to compile the package.
+ cd $(BUILD_DIR) && $(MAKE)
+ touch $@
+
+# Add here commands to clean up after the build process.
+clean:
+ dh_testdir
+ dh_testroot
+ dh_clean
+# We always get some strange symlinks in these directories which we must remove first
+ rm -f inc/inc
+ rm -f src/src
+ rm -f resources/resources
+ rm -f build-stamp
+ cd $(BUILD_DIR) && \
+ rm -f configure && \
+ rm -f inc resources src && \
+ find -name 'Makefile.in' | xargs rm -f && \
+ find -name 'Makefile' | xargs rm -f && \
+ find -name '*.o' | xargs rm -f && \
+ find -name '*.la' | xargs rm -f && \
+ find -name '*.lo' | xargs rm -f && \
+ find -name '*.deps' | xargs rm -rf && \
+ find -name '*.libs' | xargs rm -rf && \
+ rm -f stamp-h1 aclocal.m4 config.guess config.sub depcomp install-sh && \
+ rm -f ltmain.sh missing config.log libtool && \
+ rm -f config.h config.h.in config.status && \
+ rm -rf build-aux autom4te.cache
+
+install: build-stamp
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+# Add here commands to install the package into debian/salomegeom.
+ cd $(BUILD_DIR) && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/salomegeom
+
+# install the core system
+ dh_install -psalomegeom debian/tmp/salomegeom/usr/share/* usr/share/
+ dh_install -psalomegeom debian/tmp/salomegeom/usr/lib/lib*.so.* usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/lib/lib*.so usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/lib/lib*.la usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/lib/lib*.a usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/include/* usr/include
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+ dh_desktop
+# dh_installinfo
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
+
--- salomegeom-4.1.4.orig/debian/control
+++ salomegeom-4.1.4/debian/control
@@ -0,0 +1,26 @@
+Source: salomegeom
+Section: libs
+Priority: extra
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Build-Depends: cdbs, debhelper (>= 5), libopencascade-dev
+Standards-Version: 3.7.3
+
+Package: salomegeom
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: SALOME Geometry Module
+ A complete OpenCascade - OCAF based CAD framework.Note that this is not
+ the original SALOME GEOM project but an effort to create a standalone
+ framework based on the existing one from SALOME project, with the
+ addition of extra functionality.
+
+Package: salomegeom-dev
+Architecture: any
+Section: libdevel
+Depends: salomegeom (>= ${source:Version})
+Description: SALOME Geometry Module development files
+ A complete OpenCascade - OCAF based CAD framework.Note that this is not
+ the original SALOME GEOM project but an effort to create a standalone
+ framework based on the existing one from SALOME project, with the
+ addition of extra functionality.
+
--- salomegeom-4.1.4.orig/debian/compat
+++ salomegeom-4.1.4/debian/compat
@@ -0,0 +1 @@
+5
--- salomegeom-4.1.4.orig/debian/README.Debian
+++ salomegeom-4.1.4/debian/README.Debian
@@ -0,0 +1,6 @@
+salomegeom for Debian
+---------------------
+
+- First Debian package for SalomeGeom.
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 23 Aug 2009 17:12:19 +0200
--- salomegeom-4.1.4.orig/debian/docs
+++ salomegeom-4.1.4/debian/docs
@@ -0,0 +1 @@
+README.LINUX
--- salomegeom-4.1.4.orig/debian/copyright
+++ salomegeom-4.1.4/debian/copyright
@@ -0,0 +1,16 @@
+This package was debianized by Werner Mayer <wmayer@users.sourceforge.net> on
+Sun, 23 Aug 2009 17:12:19 +0200.
+
+It was downloaded from http://surfnet.dl.sourceforge.net/project/salomegeometry/salomegeometry/4.1.4_v5/geom-4.1.4.5.tar.gz
+
+Upstream Author:
+ Fotis Sioutis <sfotis@users.sourceforge.net>
+
+Copyright:
+ Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+ CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+License: LGPL-2.1
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'.
+

View File

@@ -0,0 +1,307 @@
--- salomegeom-5.1.1.orig/adm/lin/Makefile.am
+++ salomegeom-5.1.1/adm/lin/Makefile.am
@@ -2,10 +2,10 @@
# geomdir = ./
# copy some files
-targetdir = $(prefix)
-dist_target_DATA = LICENCE.lgpl
+#targetdir = $(datadir)
+#dist_target_DATA = LICENCE.lgpl
-resourcedir = $(prefix)/resources
+resourcedir = $(datadir)/resources
dist_resource_DATA = $(srcdir)/resources/GUID.txt $(srcdir)/resources/ImportExport $(srcdir)/resources/Resources $(srcdir)/resources/ShHealing
@@ -16,7 +16,7 @@
AM_CPPFLAGS = -I$(CASROOT)/inc -I$(srcdir)/$(geomdir)inc/ -I$(srcdir)/$(geomdir)src/GEOMAlgo -I$(srcdir)/$(geomdir)src/BlockFix -I$(srcdir)/$(geomdir)src/GEOM -I$(srcdir)/$(geomdir)src/NMTTools -I$(srcdir)/$(geomdir)src/NMTDS
# set library names
-lib_LTLIBRARIES = libExchangeCSFDB.la libArchimede.la libNMTDS.la libNMTTools.la libGEOMAlgo.la libGEOMImpl.la libGEOM.la libExchangeBREP.la libExchangeIGES.la libExchangeSTEP.la libExchangeSTL.la libExchangeVRML.la libPartition.la libShHealOper.la libSketcher.la
+lib_LTLIBRARIES = libExchangeCSFDB.la libArchimede.la libNMTDS.la libNMTTools.la libGEOMAlgo.la libGEOM.la libShHealOper.la libExchangeBREP.la libExchangeIGES.la libExchangeSTEP.la libExchangeSTL.la libExchangeVRML.la libPartition.la libSketcher.la libGEOMImpl.la
# set global linker flags
AM_LDFLAGS = -version-info 1:0:0
@@ -24,24 +24,24 @@
uninstall-local:
-rm -rf $(DESTDIR)$(libdir)
-rm -rf $(DESTDIR)$(includedir)
- -rm -rf $(DESTDIR)$(prefix)/resources
- -rm $(DESTDIR)$(prefix)/env_geom.sh
+ -rm -rf $(DESTDIR)$(datadir)/resources
+ -rm $(DESTDIR)$(datadir)/env_geom.sh
install-exec-local:
- test -z "$(DESTDIR)$(prefix)" || $(mkdir_p) "$(DESTDIR)$(prefix)"
- @echo "#!/bin/bash" > $(DESTDIR)$(prefix)/env_geom.sh
- @echo "export GEOMROOT="$(prefix) >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "export CSF_ResourcesDefaults="$(prefix)/resources >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "if [ -z "LD_LIBRARY_PATH" ];" >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "then LD_LIBRARY_PATH="$(libdir)";" >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "else LD_LIBRARY_PATH="$(libdir)":\$$LD_LIBRARY_PATH;" >> $(DESTDIR)$(prefix)/env_geom.sh
- @echo "fi" >> $(DESTDIR)$(prefix)/env_geom.sh
- chmod a+x $(DESTDIR)$(prefix)/env_geom.sh
- test -z "$(DESTDIR)$(prefix)/resources" || $(mkdir_p) "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/GUID.txt "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/ImportExport "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/Resources "$(DESTDIR)$(prefix)/resources"
- cp $(srcdir)/resources/ShHealing "$(DESTDIR)$(prefix)/resources"
+ test -z "$(DESTDIR)$(datadir)" || $(mkdir_p) "$(DESTDIR)$(datadir)"
+ @echo "#!/bin/bash" > $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "export GEOMROOT="$(prefix) >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "export CSF_ResourcesDefaults="$(datadir)/resources >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "if [ -z "LD_LIBRARY_PATH" ];" >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "then LD_LIBRARY_PATH="$(libdir)";" >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "else LD_LIBRARY_PATH="$(libdir)":\$$LD_LIBRARY_PATH;" >> $(DESTDIR)$(datadir)/env_geom.sh
+ @echo "fi" >> $(DESTDIR)$(datadir)/env_geom.sh
+ chmod a+x $(DESTDIR)$(datadir)/env_geom.sh
+ test -z "$(DESTDIR)$(datadir)/resources" || $(mkdir_p) "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/GUID.txt "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/ImportExport "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/Resources "$(DESTDIR)$(datadir)/resources"
+ cp $(srcdir)/resources/ShHealing "$(DESTDIR)$(datadir)/resources"
# set ARCHIMDE sources
libArchimede_la_SOURCES = $(srcdir)/$(geomdir)src/Archimede/Archimede_VolumeSection.cpp
@@ -582,6 +582,26 @@
# libShHealOper_la_LDFLAGS = -version-info 0:0:0
# libSketcher_la_LDFLAGS = -version-info 0:0:0
+libArchimede_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKGeomAlgo -lTKGeomBase -lTKG3d -lTKMesh
+libExchangeBREP_la_LIBADD = -lTKMath -lTKernel -lTKBRep
+libExchangeCSFDB_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKPShape -lTKShapeSchema -lPTKernel
+libExchangeIGES_la_LIBADD = -lTKMath -lTKernel -lTKXSBase -lTKBRep -lTKIGES
+libExchangeSTEP_la_LIBADD = -lTKMath -lTKernel -lTKXSBase -lTKBRep -lTKSTEP
+libExchangeSTL_la_LIBADD = -lTKernel -lTKSTL
+libExchangeVRML_la_LIBADD = -lTKernel -lTKVRML
+libNMTDS_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBO
+libNMTTools_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBO -lTKG2d -lTKG3d -lTKGeomAlgo -lTKGeomBase -lTKTopAlgo -lNMTDS
+libGEOMAlgo_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBool -lTKBO -lTKG2d -lTKG3d -lTKGeomAlgo \
+ -lTKGeomBase -lTKTopAlgo -lTKMesh -lTKShHealing -lNMTDS -lNMTTools
+libGEOM_la_LIBADD = -lTKMath -lTKernel -lTKXSBase -lTKBRep -lTKCAF -lTKCDF -lTKLCAF -lTKXSBase \
+ -lTKAdvTools -lTKG2d
+libGEOMImpl_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKTopAlgo -lTKCAF -lTKOffset -lTKPrim -lTKShHealing \
+ -lTKBool -lTKBO -lTKMesh -lTKG2d -lTKG3d -lTKFillet -lTKGeomAlgo -lTKGeomBase -lTKLCAF \
+ -lGEOMAlgo -lGEOM -lArchimede -lShHealOper -lSketcher -ldl
+libPartition_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBool -lTKG2d -lTKG3d -lTKTopAlgo -lTKGeomAlgo -lTKGeomBase -lTKOffset
+libShHealOper_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKBool -lTKShHealing -lTKTopAlgo -lTKG2d -lTKG3d -lTKGeomAlgo -lTKGeomBase -lTKLCAF
+libSketcher_la_LIBADD = -lTKMath -lTKernel -lTKBRep -lTKTopAlgo -lTKG2d -lTKGeomAlgo
+
# include files to be copied to installdir/inc
include_HEADERS = $(srcdir)/$(geomdir)inc/Archimede_VolumeSection.hxx \
$(srcdir)/$(geomdir)inc/BlockFix_BlockFixAPI.hxx \
@@ -921,7 +941,6 @@
$(srcdir)/$(geomdir)inc/ShHealOper_RemoveInternalWires.hxx \
$(srcdir)/$(geomdir)inc/ShHealOper_Sewing.hxx \
$(srcdir)/$(geomdir)inc/ShHealOper_ShapeProcess.hxx \
-$(srcdir)/$(geomdir)inc/ShHealOper_SpiltCurve2d.hxx \
$(srcdir)/$(geomdir)inc/ShHealOper_SplitCurve2d.hxx \
$(srcdir)/$(geomdir)inc/ShHealOper_SplitCurve3d.hxx \
$(srcdir)/$(geomdir)inc/ShHealOper_Tool.hxx \
--- salomegeom-5.1.1.orig/debian/changelog
+++ salomegeom-5.1.1/debian/changelog
@@ -0,0 +1,6 @@
+salomegeom (5.1.1-6) unstable; urgency=low
+
+ * Initial release
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 23 Aug 2009 17:12:19 +0200
+
--- salomegeom-5.1.1.orig/debian/rules
+++ salomegeom-5.1.1/debian/rules
@@ -0,0 +1,129 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+BUILD_DIR = adm/lin
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -O0
+else
+ CFLAGS += -O2
+endif
+
+configure:
+ chmod u-x resources/GUID.txt
+ chmod u-x resources/ImportExport
+ chmod u-x resources/Resources
+ chmod u-x resources/ShHealing
+ chmod u-x resources/ShHealingFullSet
+ cd $(BUILD_DIR) && \
+ autoreconf --install
+
+config.status: configure
+ dh_testdir
+# Add here commands to configure the package.
+ cd $(BUILD_DIR) && \
+ ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+ --prefix=/usr --includedir=/usr/include/salomegeom \
+ --libdir=/usr/lib --datadir=/usr/share/salomegeom \
+ LDFLAGS="-Wl,-z,defs -L/usr/lib" \
+ CXXFLAGS="$(CXXFLAGS) -I/usr/include/opencascade"
+
+build: build-links build-stamp
+
+build-links:
+ dh_testdir
+ cd $(BUILD_DIR) && \
+ ln -s ../../inc inc && \
+ ln -s ../../resources resources && \
+ ln -s ../../src src
+
+build-stamp: config.status
+ dh_testdir
+
+# Add here commands to compile the package.
+ cd $(BUILD_DIR) && $(MAKE)
+ touch $@
+
+# Add here commands to clean up after the build process.
+clean:
+ dh_testdir
+ dh_testroot
+ dh_clean
+# We always get some strange symlinks in these directories which we must remove first
+ rm -f inc/inc
+ rm -f src/src
+ rm -f resources/resources
+ rm -f build-stamp
+ cd $(BUILD_DIR) && \
+ rm -f configure && \
+ rm -f inc resources src && \
+ find -name 'Makefile.in' | xargs rm -f && \
+ find -name 'Makefile' | xargs rm -f && \
+ find -name '*.o' | xargs rm -f && \
+ find -name '*.la' | xargs rm -f && \
+ find -name '*.lo' | xargs rm -f && \
+ find -name '*.deps' | xargs rm -rf && \
+ find -name '*.libs' | xargs rm -rf && \
+ rm -f stamp-h1 aclocal.m4 config.guess config.sub depcomp install-sh && \
+ rm -f ltmain.sh missing config.log libtool && \
+ rm -f config.h config.h.in config.status && \
+ rm -rf build-aux autom4te.cache
+
+install: build-stamp
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+# Add here commands to install the package into debian/salomegeom.
+ cd $(BUILD_DIR) && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/salomegeom
+
+# install the core system
+ dh_install -psalomegeom debian/tmp/salomegeom/usr/share/* usr/share/
+ dh_install -psalomegeom debian/tmp/salomegeom/usr/lib/lib*.so.* usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/lib/lib*.so usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/lib/lib*.la usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/lib/lib*.a usr/lib
+ dh_install -psalomegeom-dev debian/tmp/salomegeom/usr/include/* usr/include
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+ dh_desktop
+# dh_installinfo
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
+
--- salomegeom-5.1.1.orig/debian/control
+++ salomegeom-5.1.1/debian/control
@@ -0,0 +1,26 @@
+Source: salomegeom
+Section: libs
+Priority: extra
+Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
+Build-Depends: cdbs, debhelper (>= 5), libopencascade-dev
+Standards-Version: 3.7.3
+
+Package: salomegeom
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: SALOME Geometry Module
+ A complete OpenCascade - OCAF based CAD framework.Note that this is not
+ the original SALOME GEOM project but an effort to create a standalone
+ framework based on the existing one from SALOME project, with the
+ addition of extra functionality.
+
+Package: salomegeom-dev
+Architecture: any
+Section: libdevel
+Depends: salomegeom (>= ${source:Version})
+Description: SALOME Geometry Module development files
+ A complete OpenCascade - OCAF based CAD framework.Note that this is not
+ the original SALOME GEOM project but an effort to create a standalone
+ framework based on the existing one from SALOME project, with the
+ addition of extra functionality.
+
--- salomegeom-5.1.1.orig/debian/compat
+++ salomegeom-5.1.1/debian/compat
@@ -0,0 +1 @@
+5
--- salomegeom-5.1.1.orig/debian/README.Debian
+++ salomegeom-5.1.1/debian/README.Debian
@@ -0,0 +1,6 @@
+salomegeom for Debian
+---------------------
+
+- First Debian package for SalomeGeom.
+
+ -- Werner Mayer <wmayer@users.sourceforge.net> Sun, 23 Aug 2009 17:12:19 +0200
--- salomegeom-5.1.1.orig/debian/docs
+++ salomegeom-5.1.1/debian/docs
@@ -0,0 +1 @@
+README.LINUX
--- salomegeom-5.1.1.orig/debian/copyright
+++ salomegeom-5.1.1/debian/copyright
@@ -0,0 +1,16 @@
+This package was debianized by Werner Mayer <wmayer@users.sourceforge.net> on
+Sun, 23 Aug 2009 17:12:19 +0200.
+
+It was downloaded from https://salomegeometry.svn.sourceforge.net/svnroot/salomegeometry/tags/5.1.1_v6
+
+Upstream Author:
+ Fotis Sioutis <sfotis@users.sourceforge.net>
+
+Copyright:
+ Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+ CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+License: LGPL-2.1
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'.
+

View File

@@ -0,0 +1,9 @@
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=X-Thumbnailer
Name=FreeCAD Thumbnailer
MimeType=application/x-extension-fcstd;
X-Thumbnailer-Exec=/usr/bin/freecad-thumbnailer %u %o %s
GenericName=FreeCADThumbnailer

View File

@@ -0,0 +1,18 @@
Document: freecad-development-documentation
Title: FreeCAD development documentation
Author: FreeCAD developers
Abstract: FreeCAD is a general purpose Open Source 3D
CAD/MCAD/CAx/CAE/PLM modeler, aimed directly at mechanical engineering
and product design but also fits in a wider range of uses around
engineering, such as architecture or other engineering specialties.
It is a feature-based parametric modeler with a modular software
architecture which makes it easy to provide additional functionality
without modifying the core system.
Section: Science/Engineering
Format: HTML
Index: /usr/share/doc/freecad/Start_Page.html
Files: /usr/share/doc/freecad/*.q*
Format: PDF
Files: /usr/share/doc/freecad/kr_16.pdf.gz /usr/share/doc/freecad/kr_210_2.pdf.gz /usr/share/doc/freecad/kr_500_2.pdf.gz

73
package/debian/freecad.1 Normal file
View File

@@ -0,0 +1,73 @@
.\" Hey, EMACS: -*- nroff -*-
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH FREECAD 1 "July 25, 2007" freecad "Linux User's Manual"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh disable hyphenation
.\" .hy enable hyphenation
.\" .ad l left justify
.\" .ad b justify to both left and right margins
.\" .nf disable filling
.\" .fi enable filling
.\" .br insert line break
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
freecad \- An extensible Open Source CAx program for Unix/X11
.SH SYNOPSIS
.B freecad
.RI [ options ] " files"
.br
.B freecadcmd
.RI [ options ] " files"
.SH DESCRIPTION
.B FreeCAD
is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features
some key concepts like macro recording, workbenches, ability to run as a
server and dynamically loadable application extensions and it is designed
to be platform independent.
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
.\" respectively.
.SH USAGE
\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter.
.SH OPTIONS
These programs follow the usual GNU command line syntax, with long
options starting with two dashes (`-').
A summary of the options supported by \fBfreecad\fR is included below.
.SS "Generic options"
.TP
\fB\-h, \-\-help\fR
Show summary of options.
.TP
\fB\-v, \-\-version\fR
Show version of program.
.TP
\fB\-c, \-\-console\fR
Start in console mode.
.TP
\fB\-\-response\-file\fR \fIarg\fR
Can be specified with '@name', too.
.SS "Configuration"
.TP
\fB\-l, \-\-write\-log\fR
Write a log file.
.TP
\fB\-t, \-\-run\-test\fR \fIarg\fR
Test level.
.TP
\fB\-M, \-\-module\-path\fR \fIarg\fR
Additional module path.
.TP
\fB\-P, \-\-python\-path\fR \fIarg\fR
Additional Python path.
.SH SEE ALSO
To get more information about \fBFreeCAD\fR, please visit \fIhttp://juergen\-riegel.net/FreeCAD/Docu/index.php/Main_Page\fR
.SH BUGS
To report a bug, please visit \fIhttp://free-cad.sf.net/\fR
.SH AUTHOR
This manual page was written by Werner Mayer.

View File

@@ -0,0 +1,18 @@
[Desktop Entry]
Version=1.0
Name=FreeCAD
Name[de]=FreeCAD
Comment=Feature based Parametric Modeler
Comment[de]=Feature-basierter parametrischer Modellierer
GenericName=CAD Application
GenericName[de]=CAD-Anwendung
Exec=/usr/bin/freecad %F
Path=/usr/lib/freecad
Terminal=false
Type=Application
Icon=/usr/share/freecad/freecad.xpm
Categories=Graphics;Science;Engineering
StartupNotify=true
GenericName[de_DE]=Feature-basierter parametrischer Modellierer
Comment[de_DE]=Feature-basierter parametrischer Modellierer
MimeType=application/x-extension-fcstd

View File

@@ -0,0 +1,3 @@
usr/lib/freecad/bin/FreeCAD usr/bin/freecad
usr/lib/freecad/bin/FreeCADCmd usr/bin/freecadcmd
usr/share/man/man1/freecad.1.gz usr/share/man/man1/freecadcmd.1.gz

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="application/x-extension-fcstd">
<sub-class-of type="application/zip"/>
<comment>FreeCAD document files</comment>
<glob pattern="*.fcstd"/>
</mime-type>
</mime-info>

6
package/debian/menu Normal file
View File

@@ -0,0 +1,6 @@
?package(freecad):needs="X11"\
section="Applications/Science/Engineering"\
title="FreeCAD"\
command="/usr/bin/freecad"\
icon="/usr/share/freecad/freecad.xpm"

View File

@@ -0,0 +1,31 @@
#!/usr/bin/python
import sys, zipfile, md5
import getopt
import gnomevfs
opt,par = getopt.getopt(sys.argv[1:],'-s:')
inpfile = gnomevfs.get_local_path_from_uri(par[0])
outfile = par[1]
try:
zfile=zipfile.ZipFile(inpfile)
files=zfile.namelist()
# check for meta-file if it's really a FreeCAD document
if files[0] != "Document.xml":
sys.exit(1)
image="thumbnails/Thumbnail.png"
if image in files:
image=zfile.read(image)
else:
freecad=open("/usr/share/freecad/freecad-doc.png")
image=freecad.read()
thumb=open(outfile,"wb")
thumb.write(image)
thumb.close()
except:
sys.exit(1)

View File

@@ -0,0 +1,20 @@
.TH FREECAD 1 "August 04, 2008" freecad "Linux User's Manual"
.SH NAME
freecad-thumbnailer \- A thumbnailer for FreeCAD project files
.SH SYNOPSIS
\fBfreecad-thumbnailer\fP [ -s \fIsize\fP ] \fIinput file\fP \fIoutput file\fP
.SH DESCRIPTION
\fBfreecad-thumbnailer\fP
is a Python script that extracts an embedded thumbnail from a FreeCAD project file.
If no thumbnail is embedded then nothing happens. According to the specification of
freedesktop.org the thumbnail image is a PNG file. The required \fBinput file\fP argument
specifies the project file where the thumbnail should be extracted from and the
\fBoutput file\fP specifies the file where the thumbnail should be written to.
.SH OPTIONS
.TP
\fB-s \fIsize\fR
Specify the size of the image in pixel.
.SH "SEE ALSO"
freecad(1), freecadcmd(1)
.SH AUTHOR
This manual page was written by Werner Mayer.

View File

@@ -0,0 +1,30 @@
<gconfschemafile>
<schemalist>
<schema>
<key>/schemas/desktop/gnome/thumbnailers/application@x-extension-fcstd/enable</key>
<applyto>/desktop/gnome/thumbnailers/application@x-extension-fcstd/enable</applyto>
<owner>freecad</owner>
<type>bool</type>
<default>true</default>
<locale name="C">
<short>Enable thumbnailing of FreeCAD documents.</short>
<long>Enable thumbnailing of FreeCAD documents.</long>
</locale>
</schema>
<schema>
<key>/schemas/desktop/gnome/thumbnailers/application@x-extension-fcstd/command</key>
<applyto>/desktop/gnome/thumbnailers/application@x-extension-fcstd/command</applyto>
<owner>freecad</owner>
<type>string</type>
<default>/usr/bin/freecad-thumbnailer -s %s %u %o</default>
<locale name="C">
<short>Thumbnail command for documents from FreeCAD.</short>
<long>Valid command plus arguments for freecad-thumbnailer.</long>
</locale>
</schema>
</schemalist>
</gconfschemafile>

View File

@@ -0,0 +1,78 @@
Index: debian/rules
===================================================================
--- debian/rules (revision 1523)
+++ debian/rules (working copy)
@@ -11,6 +11,10 @@
MODULES = Part Mesh Points Raytracing Image Drawing Test
+# Preliminary only as long as no official debian package for
+# OpenCascade is available
+DESTOCCDIR=$(shell pwd)/debian/freecad/usr/lib/freecad/lib
+
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
@@ -85,6 +89,33 @@
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
+# Preliminary only as long as no official debian package for
+# OpenCascade is available
+ install -m777 /usr/lib/libTKernel-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKMath-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKG2d-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKG3d-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKGeomBase-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKBRep-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKGeomAlgo-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKTopAlgo-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKPrim-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKBO-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKBool-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKShHealing-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKXSBase-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKSTEPBase-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKSTEPAttr-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKSTEP209-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKSTEP-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKFillet-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKOffset-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKIGES-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKMesh-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKHLR-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libTKSTL-6.2.so $(DESTOCCDIR)
+ install -m777 /usr/lib/libSoQt4.so.20 $(DESTOCCDIR)
+
# install the modules
$(foreach MODULE,$(MODULES), \
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
Index: debian/shlibs.local
===================================================================
--- debian/shlibs.local (revision 0)
+++ debian/shlibs.local (revision 0)
@@ -0,0 +1,24 @@
+libTKernel 6.2
+libTKMath 6.2
+libTKG2d 6.2
+libTKG3d 6.2
+libTKGeomBase 6.2
+libTKBRep 6.2
+libTKGeomAlgo 6.2
+libTKTopAlgo 6.2
+libTKPrim 6.2
+libTKBO 6.2
+libTKBool 6.2
+libTKShHealing 6.2
+libTKXSBase 6.2
+libTKSTEPAttr 6.2
+libTKSTEPBase 6.2
+libTKSTEP209 6.2
+libTKSTEP 6.2
+libTKFillet 6.2
+libTKOffset 6.2
+libTKIGES 6.2
+libTKMesh 6.2
+libTKHLR 6.2
+libTKSTL 6.2
+libSoQt4 20

View File

@@ -0,0 +1,33 @@
Index: control
===================================================================
--- control (revision 2213)
+++ control (working copy)
@@ -4,21 +4,21 @@
Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
Homepage: http://sourceforge.net/projects/free-cad
Build-Depends: debhelper (>= 5), autotools-dev, libc6-dev (>= 2.1.3),
- libstdc++6, libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
- libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
- libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
- zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
+ libstdc++6, libboost1.37-dev, libboost-date-time1.37-dev, libboost-filesystem1.37-dev,
+ libboost-graph1.37-dev, libboost-iostreams1.37-dev, libboost-program-options1.37-dev,
+ libboost-regex1.37-dev, libboost-serialization1.37-dev, libboost-signals1.37-dev,
+ zlib1g-dev, libxerces-c28 | libxerces-c2-dev,
libxt-dev, libxmu-dev, libxi-dev, libx11-dev, libxext-dev,
- libqt4-dev, libsoqt4-dev, libcoin40-dev, libgl1-mesa-dev,
+ libqt4-dev, libsoqt4-dev, libcoin60-dev, libgl1-mesa-dev,
python2.5-dev, python, python-central (>= 0.5.6),
- libgts-dev, libcv-dev, libopencascade-dev
+ libgts-dev, libcv-dev, libopencascade-foundation-dev, libopencascade-modeling-dev
Standards-Version: 3.7.3
XS-Python-Version: current
Package: freecad
Architecture: any
Section: science
-Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, python
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, python, python-pivy
XB-Python-Version: ${python:Versions}
Conflicts: freecad (<= 0.6.472-1)
Suggests: gnochm | kchmviewer | kchmviewer-nokde | xchm, python-opencv

View File

@@ -0,0 +1,25 @@
Index: debian/control
===================================================================
--- debian/control (Revision 1881)
+++ debian/control (Arbeitskopie)
@@ -4,15 +4,15 @@
Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
Homepage: http://sourceforge.net/projects/free-cad
Build-Depends: debhelper (>= 5), autotools-dev, libc6-dev (>= 2.1.3),
- libstdc++6, libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
- libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
- libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
- zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
+ libstdc++6, libboost1.35-dev, libboost-date-time1.35-dev, libboost-filesystem1.35-dev,
+ libboost-graph1.35-dev, libboost-iostreams1.35-dev, libboost-program-options1.35-dev,
+ libboost-regex1.35-dev, libboost-serialization1.35-dev, libboost-signals1.35-dev,
+ libboost-system1.35-dev, zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
libxt-dev, libxmu-dev, libxi-dev, libx11-dev, libxext-dev,
libqt4-dev, libsoqt4-dev, libcoin40-dev, libgl1-mesa-dev,
python2.5-dev, python, python-central (>= 0.5.6),
libgts-dev, libcv-dev, libopencascade-dev
-Standards-Version: 3.7.3
+Standards-Version: 3.8.0
XS-Python-Version: current
Package: freecad

View File

@@ -0,0 +1,25 @@
Index: debian/control
===================================================================
--- debian/control (Revision 1879)
+++ debian/control (Arbeitskopie)
@@ -4,15 +4,15 @@
Maintainer: Werner Mayer <wmayer@users.sourceforge.net>
Homepage: http://sourceforge.net/projects/free-cad
Build-Depends: debhelper (>= 5), autotools-dev, libc6-dev (>= 2.1.3),
- libstdc++6, libboost-dev, libboost-date-time-dev, libboost-filesystem-dev,
- libboost-graph-dev, libboost-iostreams-dev, libboost-program-options-dev,
- libboost-regex-dev, libboost-serialization-dev, libboost-signals-dev,
- zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
+ libstdc++6, libboost1.35-dev, libboost-date-time1.35-dev, libboost-filesystem1.35-dev,
+ libboost-graph1.35-dev, libboost-iostreams1.35-dev, libboost-program-options1.35-dev,
+ libboost-regex1.35-dev, libboost-serialization1.35-dev, libboost-signals1.35-dev,
+ libboost-system1.35-dev, zlib1g-dev, libxerces27-dev | libxerces-c2-dev,
libxt-dev, libxmu-dev, libxi-dev, libx11-dev, libxext-dev,
libqt4-dev, libsoqt4-dev, libcoin40-dev, libgl1-mesa-dev,
python2.5-dev, python, python-central (>= 0.5.6),
libgts-dev, libcv-dev, libopencascade-dev
-Standards-Version: 3.7.3
+Standards-Version: 3.8.0
XS-Python-Version: current
Package: freecad

40
package/debian/postinst.ex Executable file
View File

@@ -0,0 +1,40 @@
#!/bin/sh
set -e
case "$1" in
configure)
if [ -d /usr/share/freecad/Mod/Robot/Lib/Kuka ]; then
echo "resource files installed..."
else
echo "getting resource files ..."
wgetoptions="--tries=2 --timeout=60"
downloadurl="http://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk"
downloaddir="--directory-prefix=/usr/share/freecad/Mod/Robot/Lib/Kuka"
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr16.wrl
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr125_3.wrl
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr210.WRL
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr500_1.csv
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr500_1.wrl
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr_16.csv
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr_125.csv
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/kr_210_2.csv
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/testprog.dat
wget $wgetoptions $downloaddir $downloadurl/src/Mod/Robot/Lib/Kuka/testprog.src
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0

33
package/debian/prerm.ex Normal file
View File

@@ -0,0 +1,33 @@
#!/bin/sh
set -e
case "$1" in
remove|upgrade|deconfigure)
downloaddir="/usr/share/freecad/Mod/Robot/Lib/Kuka"
rm -f $downloaddir/kr16.wrl
rm -f $downloaddir/kr125_3.wrl
rm -f $downloaddir/kr210.WRL
rm -f $downloaddir/kr500_1.csv
rm -f $downloaddir/kr500_1.wrl
rm -f $downloaddir/kr_16.csv
rm -f $downloaddir/kr_125.csv
rm -f $downloaddir/kr_210_2.csv
rm -f $downloaddir/testprog.dat
rm -f $downloaddir/testprog.src
;;
failed-upgrade)
;;
*)
echo "prerm called with unknown argument \`$1'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0

134
package/debian/rules Executable file
View File

@@ -0,0 +1,134 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
MODULES = Part Mesh MeshPart PartDesign Sketcher Points Raytracing Image Drawing ReverseEngineering Complete Fem Robot Import Inspection Arch
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
patch-stamp:
touch $@
configure: autogen.sh patch-stamp
dh_testdir
for autotools_mod_file in `find . -name Makefile.in` aclocal.m4 \
configure m4/libtool.m4 m4/ltmain.sh m4/ltoptions.m4 \
m4/ltversion.m4 m4/lt~obsolete.m4; do \
cp -a $$autotools_mod_file $$autotools_mod_file.setaside; \
done
chmod u+x autogen.sh
./autogen.sh
config.status: configure
dh_testdir
./configure --with-occ-include=/usr/include/opencascade \
--with-occ-lib=/usr/lib \
--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
--prefix=/usr/lib/freecad --mandir=/usr/share/man \
--infodir=/usr/share/info --datadir=/usr/share/freecad \
--includedir=/usr/include/freecad --docdir=/usr/share/doc/freecad \
CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
touch src/Build/Version.h
build: build-stamp
build-stamp: config.status
dh_testdir
$(MAKE)
touch $@
clean:
mv src/Build/Version.h src/Build/Version.h.old
dh clean
mv src/Build/Version.h.old src/Build/Version.h
rm -f build-stamp
find -name '*.pyc' | xargs rm -f
find -name 'moc_*.cpp' | xargs rm -f
find -name '*.lo' | xargs rm -f
find -name '*.deps' | xargs rm -rf
find -name '*.libs' | xargs rm -rf
rm -f stamp-h1 config.log libtool 71
if [ -e Makefile.in.setaside ]; then \
for autotools_mod_file in `find . -name Makefile.in` aclocal.m4 \
configure m4/libtool.m4 m4/ltmain.sh m4/ltoptions.m4 \
m4/ltversion.m4 m4/lt~obsolete.m4; do \
mv -f $$autotools_mod_file.setaside $$autotools_mod_file; \
done; fi
dh clean
rm -f patch-stamp
#quilt pop -a
#rm -rf .pc/
install: build install-stamp
install-stamp:
dh_testdir
dh_testroot
dh_prep
dh_installdirs
$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/freecad
# Remove testing modules we don't want to have in the deb
rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/_TEMPLATE_
rm -rf debian/tmp/freecad/usr/lib/freecad/Mod/TemplatePyMod
# install the core system
dh_install -pfreecad debian/tmp/freecad/usr/share/freecad/* usr/share/freecad/
#dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/share usr/lib/freecad
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/bin usr/lib/freecad
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/FreeCAD.so usr/lib/freecad/lib
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/lib/lib*.so.* usr/lib/freecad/lib
dh_install debian/freecad.desktop usr/share/applications
dh_installman debian/freecad.1
dh_installchangelogs ChangeLog.txt
# install the modules
$(foreach MODULE,$(MODULES), \
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/$(MODULE)*.so usr/lib/freecad/Mod/$(MODULE); \
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so.* usr/lib/freecad/Mod/$(MODULE); \
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/*.py usr/lib/freecad/Mod/$(MODULE);)
# special treating of PartDesign module
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/PartDesign/Scripts/*.py usr/lib/freecad/Mod/PartDesign/Scripts;)
# special treating of Draft module
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/*.py usr/lib/freecad/Mod/Draft
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Draft/draftlibs/*.py usr/lib/freecad/Mod/Draft/draftlibs
# special treating of Test module
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/lib*.so.* usr/lib/freecad/Mod/Test
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/*.py usr/lib/freecad/Mod/Test
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Test/QtUnitGui.so usr/lib/freecad/Mod/Test
dh_install -pfreecad-dev debian/tmp/freecad/usr/include/* usr/include
dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/lib/lib*.so usr/lib/freecad/lib
$(foreach MODULE,$(MODULES), \
dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.la usr/lib/freecad/Mod/$(MODULE); \
dh_install -pfreecad-dev debian/tmp/freecad/usr/lib/freecad/Mod/$(MODULE)/lib*.so usr/lib/freecad/Mod/$(MODULE);)
# special treating of Arch module
dh_install -pfreecad debian/tmp/freecad/usr/lib/freecad/Mod/Arch/*.py usr/lib/freecad/Mod/Arch
# install the help system
dh_install -pfreecad-doc debian/tmp/freecad/usr/share/doc/* usr/share/doc/
touch install-stamp
override_dh_compress:
dh_compress -X.qch -X.qhc
override_dh_makeshlibs:
binary-indep: build install
dh binary-indep
binary-arch: build install
dh binary-arch
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install

View File

@@ -0,0 +1,2 @@
libGL 1 libgl1-mesa-glx (>= 7.7.1-1)
libSoQt4 20 libsoqt4-20 (>= 1.4.2~svn20090224)

View File

@@ -0,0 +1 @@
3.0 (quilt)

View File

@@ -0,0 +1,3 @@
# Lintian thinks uploader Adam Powell's name violates policy
freecad source: uploader-address-missing "Adam C. Powell
freecad source: uploader-not-full-name IV"

2
package/debian/watch Normal file
View File

@@ -0,0 +1,2 @@
version=3
http://sf.net/free-cad/freecad_(.+)\.orig\.tar\.gz

98
package/makedebian.sh Executable file
View File

@@ -0,0 +1,98 @@
#!/bin/sh
# (c) 2009 Werner Mayer GPL
# This script creates a new source tarball and extracts it in the build
# directory. The source directory and tarball are renamed to Debian-
# conform names.
# Then the debian directory is created from a diff file and prepared for
# the new build. For this the following steps are executed:
#
# 1. cd freecad-X.Y.xyz
# 2. patch -p1 < .../debian/diff/freecad_hardy.diff
# 3. dch -v X.Y.xyz-1hardy1 "New release for Ubuntu 8.04 (Hardy Heron)"
# 4. debuild
#
# Example how to work with sed can be found here:
# http://www.grymoire.com/Unix/Sed.html
# global settings
REV_FILE=./revision.m4
TMP_PATH=/tmp
MAJ=0
MIN=12
ALIAS="Vulcan"
# go to root directory
CUR_DIR=$PWD
verz=`dirname $(readlink -f ${0})`
cd $verz && cd ..
# let's import OLD_REV (if there)
if [ -f ./.last_revision ]; then
. ./.last_revision
else
OLD_REV=0
fi
if svn --xml info >/dev/null 2>&1; then
REV=`svn --xml info | tr -d '\r\n' | sed -e 's/.*<commit.*revision="\([0-9]*\)".*<\/commit>.*/\1/'`
LCD=`svn --xml info | tr -d '\r\n' | sed -e 's/.*<commit.*<date>\([0-9\-]*\)\T\([0-9\:]*\)\..*<\/date>.*<\/commit>.*/\1 \2/'`
URL=`svn --xml info | tr -d '\r\n' | sed -e 's/.*<url>\(.*\)<\/url>.*/\1/'`
elif svn --version --quiet >/dev/null 2>&1; then
REV=`svn info | grep "^Revision:" | cut -d" " -f2`
LCD=`svn info | grep "^Last Changed Date:" | cut -d" " -f4,5`
URL=`svn info | grep "^URL:" | cut -d" " -f2`
else
REV=0
LCD=""
URL=""
fi
if [ "x$REV" != "x$OLD_REV" -o ! -r $REV_FILE ]; then
echo "m4_define([FREECAD_MAJOR], $MAJ)" > $REV_FILE
echo "m4_define([FREECAD_MINOR], $MIN)" >> $REV_FILE
echo "m4_define([FREECAD_MICRO], $REV)" >> $REV_FILE
#echo "#define FCVersionMajor \"$MAJ\"" > src/Build/Version.h
#echo "#define FCVersionMinor \"$MIN\"" >> src/Build/Version.h
#echo "#define FCVersionName \"$ALIAS\"" >> src/Build/Version.h
#echo "#define FCRevision \"$REV\"" >> src/Build/Version.h
#echo "#define FCRepositoryURL \"$URL\"" >> src/Build/Version.h
#echo "#define FCCurrentDateT \"$LCD\"\n" >> src/Build/Version.h
touch src/Build/Version.h.in
fi
echo "OLD_REV=$REV" > ./.last_revision
SRC_DIR=$PWD
# Prepare source tarball and unpack it in build directory
cd $CUR_DIR
make dist
rm -rf $TMP_PATH/freecad-$REV
mkdir $TMP_PATH/freecad-$REV
mv FreeCAD-$MAJ.$MIN.$REV.tar.gz $TMP_PATH/freecad-$REV/freecad_$MAJ.$MIN.$REV.orig.tar.gz
cd $TMP_PATH/freecad-$REV
tar -xzf freecad_$MAJ.$MIN.$REV.orig.tar.gz
mv FreeCAD-$MAJ.$MIN.$REV freecad-$MAJ.$MIN.$REV
cd freecad-$MAJ.$MIN.$REV
rm -rf src/CXX
rm -rf src/zipios++
# Prepare debian folder and set the revision number in debian/changelog
# for package versioning
LSB_RELS=`lsb_release -r | cut -f2`
LSB_DESC=`lsb_release -d | cut -f2`
LSB_CODE=`lsb_release -c | cut -f2`
patch -p1 < $SRC_DIR/package/debian/diff/freecad_$LSB_CODE.diff
DEBEMAIL="wmayer@users.sourceforge.net"
export DEBEMAIL
dch -v $MAJ.$MIN.$REV-1"$LSB_CODE"1 "New release for $LSB_DESC ($LSB_CODE)"
debuild
cd ..
gunzip freecad_$MAJ.$MIN.$REV-1"$LSB_CODE"1.diff.gz
mv freecad_$MAJ.$MIN.$REV-1"$LSB_CODE"1.diff $SRC_DIR/package/debian/freecad_$LSB_CODE.diff
exit 0

49
package/makepkg Normal file
View File

@@ -0,0 +1,49 @@
# Contributor: Joaquim Coimbra <joaca_rj@yahoo.com.br>
# Thanks to Werner Mayer for his support
pkgname=freecad-svn
pkgver=2152
pkgrel=2
pkgdesc="A general purpose 3D CAD modeler, aimed directly at mechanical engineering and product design but also architecture or other engineering specialties"
arch=('x86_64')
url="https://sourceforge.net/apps/mediawiki/free-cad/"
license=('GPL')
groups=()
depends=('xerces-c' 'gts' 'opencascade' 'coin' 'soqt' 'soqt-doc' 'zlib' 'ode' 'qt' 'opencv' 'boost' 'python')
makedepends=('subversion')
provides=('freecad')
conflicts=('freecad')
replaces=()
backup=()
options=('!makeflags')
install=
source=()
noextract=()
md5sums=()
_svntrunk=https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk
_svnmod=freecad
build() {
cd "$srcdir"
if [ -d $_svnmod/.svn ]; then
(cd $_svnmod && svn up -r $pkgver)
else
svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod
fi
msg "SVN checkout done or server timeout"
msg "Starting make..."
cd $_svnmod
#
# BUILD
#
./autogen.sh || return 1
./configure CXXFLAGS="-D_OCC64" --prefix=/usr/ --with-qt4-dir=/usr/lib/qt/ --with-qt4-bin=/usr/bin/ --with-qt4-include=/usr/include/ --with-qt4-lib=/usr/lib/qt/ --with-xercesc-include=/usr/include/xercesc/ --with-xercesc-lib=/usr/lib/
make || return 1
make DESTDIR="$pkgdir/" install || return 1
}

1
src/3rdParty/ANN/CMakeLists.txt vendored Normal file
View File

@@ -0,0 +1 @@
add_subdirectory(src)

47
src/3rdParty/ANN/Copyright.txt vendored Normal file
View File

@@ -0,0 +1,47 @@
ANN: Approximate Nearest Neighbors
Version: 1.1.1
Release Date: Aug 4, 2006
----------------------------------------------------------------------------
Copyright (c) 1997-2005 University of Maryland and Sunil Arya and David
Mount All Rights Reserved.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser Public License as published by the
Free Software Foundation; either version 2.1 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser Public License for more details.
A copy of the terms and conditions of the license can be found in
License.txt or online at
http://www.gnu.org/copyleft/lesser.html
To obtain a copy, write to the Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Disclaimer
----------
The University of Maryland and the authors make no representations about
the suitability or fitness of this software for any purpose. It is
provided "as is" without express or implied warranty.
---------------------------------------------------------------------
Authors
-------
David Mount
Dept of Computer Science
University of Maryland,
College Park, MD 20742 USA
mount@cs.umd.edu
http://www.cs.umd.edu/~mount/
Sunil Arya
Dept of Computer Science
Hong University of Science and Technology
Clearwater Bay, HONG KONG
arya@cs.ust.hk
http://www.cs.ust.hk/faculty/arya/

450
src/3rdParty/ANN/License.txt vendored Normal file
View File

@@ -0,0 +1,450 @@
----------------------------------------------------------------------
The ANN Library (all versions) is provided under the terms and
conditions of the GNU Lesser General Public Library, which is stated
below. It can also be found at:
http://www.gnu.org/copyleft/lesser.html
----------------------------------------------------------------------
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence the
version number 2.1.]
Preamble
The licenses for most software are designed to take away your freedom to
share and change it. By contrast, the GNU General Public Licenses are
intended to guarantee your freedom to share and change free software--to
make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the Free
Software Foundation and other authors who decide to use it. You can use
it too, but we suggest you first think carefully about whether this
license or the ordinary General Public License is the better strategy to
use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish); that you receive source code or can get it if
you want it; that you can change the software and use pieces of it in
new free programs; and that you are informed that you can do these
things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for you
if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis or
for a fee, you must give the recipients all the rights that we gave you.
You must make sure that they, too, receive or can get the source code.
If you link other code with the library, you must provide complete
object files to the recipients, so that they can relink them with the
library after making changes to the library and recompiling it. And you
must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that there is
no warranty for the free library. Also, if the library is modified by
someone else and passed on, the recipients should know that what they
have is not the original version, so that the original author's
reputation will not be affected by problems that might be introduced by
others.
Finally, software patents pose a constant threat to the existence of any
free program. We wish to make sure that a company cannot effectively
restrict the users of a free program by obtaining a restrictive license
from a patent holder. Therefore, we insist that any patent license
obtained for a version of the library must be consistent with the full
freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the ordinary
GNU General Public License. This license, the GNU Lesser General Public
License, applies to certain designated libraries, and is quite different
from the ordinary General Public License. We use this license for
certain libraries in order to permit linking those libraries into
non-free programs.
When a program is linked with a library, whether statically or using a
shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the entire
combination fits its criteria of freedom. The Lesser General Public
License permits more lax criteria for linking other code with the
library.
We call this license the "Lesser" General Public License because it does
Less to protect the user's freedom than the ordinary General Public
License. It also provides other free software developers Less of an
advantage over competing non-free programs. These disadvantages are the
reason we use the ordinary General Public License for many libraries.
However, the Lesser license provides advantages in certain special
circumstances.
For example, on rare occasions, there may be a special need to encourage
the widest possible use of a certain library, so that it becomes a
de-facto standard. To achieve this, non-free programs must be allowed to
use the library. A more frequent case is that a free library does the
same job as widely used non-free libraries. In this case, there is
little to gain by limiting the free library to free software only, so we
use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of free
software. For example, permission to use the GNU C Library in non-free
programs enables many more people to use the whole GNU operating system,
as well as its variant, the GNU/Linux operating system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is linked
with the Library has the freedom and the wherewithal to run that program
using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or other
authorized party saying it may be distributed under the terms of this
Lesser General Public License (also called "this License"). Each
licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work which
has been distributed under these terms. A "work based on the Library"
means either the Library or any derivative work under copyright law:
that is to say, a work containing the Library or a portion of it, either
verbatim or with modifications and/or translated straightforwardly into
another language. (Hereinafter, translation is included without
limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for making
modifications to it. For a library, complete source code means all the
source code for all modules it contains, plus any associated interface
definition files, plus the scripts used to control compilation and
installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of running
a program using the Library is not restricted, and output from such a
program is covered only if its contents constitute a work based on the
Library (independent of the use of the Library in a tool for writing
it). Whether that is true depends on what the Library does and what the
program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's complete
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the notices
that refer to this License and to the absence of any warranty; and
distribute a copy of this License along with the Library.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Library or any portion of
it, thus forming a work based on the Library, and copy and distribute
such modifications or work under the terms of Section 1 above, provided
that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the application.
Therefore, Subsection 2d requires that any application-supplied function
or table used by this function must be optional: if the application does
not supply it, the square root function must still compute square
roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library, and
can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based on
the Library, the distribution of the whole must be on the terms of this
License, whose permissions for other licensees extend to the entire
whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or
contest your rights to work written entirely by you; rather, the intent
is to exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the
Library with the Library (or with a work based on the Library) on a
volume of a storage or distribution medium does not bring the other work
under the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so that
they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in these
notices.
Once this change is made in a given copy, it is irreversible for that
copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of the
Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or derivative
of it, under Section 2) in object code or executable form under the
terms of Sections 1 and 2 above provided that you accompany it with the
complete corresponding machine-readable source code, which must be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange.
If distribution of object code is made by offering access to copy from a
designated place, then offering equivalent access to copy the source
code from the same place satisfies the requirement to distribute the
source code, even though third parties are not compelled to copy the
source along with the object code.
5. A program that contains no derivative of any portion of the Library,
but is designed to work with the Library by being compiled or linked
with it, is called a "work that uses the Library". Such a work, in
isolation, is not a derivative work of the Library, and therefore falls
outside the scope of this License.
However, linking a "work that uses the Library" with the Library creates
an executable that is a derivative of the Library (because it contains
portions of the Library), rather than a "work that uses the library".
The executable is therefore covered by this License. Section 6 states
terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be linked
without the Library, or if the work is itself a library. The threshold
for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data structure
layouts and accessors, and small macros and small inline functions (ten
lines or less in length), then the use of the object file is
unrestricted, regardless of whether it is legally a derivative work.
(Executables containing this object code plus portions of the Library
will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6, whether
or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or link a
"work that uses the Library" with the Library to produce a work
containing portions of the Library, and distribute that work under terms
of your choice, provided that the terms permit modification of the work
for the customer's own use and reverse engineering for debugging such
modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work during
execution displays copyright notices, you must include the copyright
notice for the Library among them, as well as a reference directing the
user to the copy of this License. Also, you must do one of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood that
the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at least
three years, to give the same user the materials specified in
Subsection 6a, above, for a charge no more than the cost of
performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the Library"
must include any data and utility programs needed for reproducing the
executable from it. However, as a special exception, the materials to be
distributed need not include anything that is normally distributed (in
either source or binary form) with the major components (compiler,
kernel, and so on) of the operating system on which the executable runs,
unless that component itself accompanies the executable.
It may happen that this requirement contradicts the license restrictions
of other proprietary libraries that do not normally accompany the
operating system. Such a contradiction means you cannot use both them
and the Library together in an executable that you distribute.
7. You may place library facilities that are a work based on the Library
side-by-side in a single library together with other library facilities
not covered by this License, and distribute such a combined library,
provided that the separate distribution of the work based on the Library
and of the other library facilities is otherwise permitted, and provided
that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute the
Library except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense, link with, or distribute the
Library is void, and will automatically terminate your rights under this
License. However, parties who have received copies, or rights, from you
under this License will not have their licenses terminated so long as
such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and all
its terms and conditions for copying, distributing or modifying the
Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot distribute
so as to satisfy simultaneously your obligations under this License and
any other pertinent obligations, then as a consequence you may not
distribute the Library at all. For example, if a patent license would
not permit royalty-free redistribution of the Library by all those who
receive copies directly or indirectly through you, then the only way you
could satisfy both it and this License would be to refrain entirely from
distribution of the Library.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply, and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is implemented
by public license practices. Many people have made generous
contributions to the wide range of software distributed through that
system in reliance on consistent application of that system; it is up to
the author/donor to decide if he or she is willing to distribute
software through any other system and a licensee cannot impose that
choice.
This section is intended to make thoroughly clear what is believed to be
a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may
add an explicit geographical distribution limitation excluding those
countries, so that distribution is permitted only in or among countries
not thus excluded. In such case, this License incorporates the
limitation as if written in the body of this License.
13. The Free Software Foundation may publish revised and/or new versions
of the Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a license
version number, you may choose any version ever published by the Free
Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free Software
Foundation; we sometimes make exceptions for this. Our decision will be
guided by the two goals of preserving the free status of all derivatives
of our free software and of promoting the sharing and reuse of software
generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH
YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR
DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY
(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED
INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF
THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR
OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

46
src/3rdParty/ANN/MS_Win32/Ann.sln vendored Normal file
View File

@@ -0,0 +1,46 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll", "dll\dll.vcproj", "{A7D00B21-CB9C-4BBB-8DEE-51025104F867}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sample", "sample\sample.vcproj", "{C76F5A10-7A4A-4546-9414-296DB38BE825}"
ProjectSection(ProjectDependencies) = postProject
{A7D00B21-CB9C-4BBB-8DEE-51025104F867} = {A7D00B21-CB9C-4BBB-8DEE-51025104F867}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test", "test\test.vcproj", "{6AC673C7-7B3F-4520-A761-647B212A4BEF}"
ProjectSection(ProjectDependencies) = postProject
{A7D00B21-CB9C-4BBB-8DEE-51025104F867} = {A7D00B21-CB9C-4BBB-8DEE-51025104F867}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ann2fig", "ann2fig\ann2fig.vcproj", "{622DD7D8-0C0A-4303-9176-C9A8AF467E70}"
ProjectSection(ProjectDependencies) = postProject
{A7D00B21-CB9C-4BBB-8DEE-51025104F867} = {A7D00B21-CB9C-4BBB-8DEE-51025104F867}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A7D00B21-CB9C-4BBB-8DEE-51025104F867}.Debug|Win32.ActiveCfg = Debug|Win32
{A7D00B21-CB9C-4BBB-8DEE-51025104F867}.Debug|Win32.Build.0 = Debug|Win32
{A7D00B21-CB9C-4BBB-8DEE-51025104F867}.Release|Win32.ActiveCfg = Release|Win32
{A7D00B21-CB9C-4BBB-8DEE-51025104F867}.Release|Win32.Build.0 = Release|Win32
{C76F5A10-7A4A-4546-9414-296DB38BE825}.Debug|Win32.ActiveCfg = Debug|Win32
{C76F5A10-7A4A-4546-9414-296DB38BE825}.Debug|Win32.Build.0 = Debug|Win32
{C76F5A10-7A4A-4546-9414-296DB38BE825}.Release|Win32.ActiveCfg = Release|Win32
{C76F5A10-7A4A-4546-9414-296DB38BE825}.Release|Win32.Build.0 = Release|Win32
{6AC673C7-7B3F-4520-A761-647B212A4BEF}.Debug|Win32.ActiveCfg = Debug|Win32
{6AC673C7-7B3F-4520-A761-647B212A4BEF}.Debug|Win32.Build.0 = Debug|Win32
{6AC673C7-7B3F-4520-A761-647B212A4BEF}.Release|Win32.ActiveCfg = Release|Win32
{6AC673C7-7B3F-4520-A761-647B212A4BEF}.Release|Win32.Build.0 = Release|Win32
{622DD7D8-0C0A-4303-9176-C9A8AF467E70}.Debug|Win32.ActiveCfg = Debug|Win32
{622DD7D8-0C0A-4303-9176-C9A8AF467E70}.Debug|Win32.Build.0 = Debug|Win32
{622DD7D8-0C0A-4303-9176-C9A8AF467E70}.Release|Win32.ActiveCfg = Release|Win32
{622DD7D8-0C0A-4303-9176-C9A8AF467E70}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

53
src/3rdParty/ANN/MS_Win32/Makefile vendored Normal file
View File

@@ -0,0 +1,53 @@
#-----------------------------------------------------------------------------
# Makefile for Windows Versions.
#
# ANN: Approximate Nearest Neighbors
# Version: 1.1.1 08/04/06
#-----------------------------------------------------------------------------
# Copyright (c) 1997-2005 University of Maryland and Sunil Arya and
# David Mount. All Rights Reserved.
#
# This software and related documentation is part of the Approximate
# Nearest Neighbor Library (ANN). This software is provided under
# the provisions of the Lesser GNU Public License (LGPL). See the
# file ../ReadMe.txt for further information.
#
# The University of Maryland (U.M.) and the authors make no
# representations about the suitability or fitness of this software for
# any purpose. It is provided "as is" without express or implied
# warranty.
#-----------------------------------------------------------------------------
# Revision 1.0 05/03/05
# Initial release
# Revision 1.1.1 08/04/06
# Added copyright/license
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# This is not used for compiling the dll. It is just used for cleaning
# things up for distribution. For compilcation, open the Ann.sln
# solution file in Microsoft Windows Visual Studio.NET.
#-----------------------------------------------------------------------------
default:
@echo "Enter one of the following:"
@echo " make clean remove object files"
@echo " make realclean remove library and executable files"
@echo " "
@echo "See file Makefile for other compilation options."
#-----------------------------------------------------------------------------
# Remove .o files and core files
#-----------------------------------------------------------------------------
clean:
-rm -f -r ann2fig/Debug ann2fig/Release
-rm -f -r dll/Debug dll/Release
-rm -f -r sample/Debug sample/Release
-rm -f -r test/Debug test/Release
-rm -f Ann.ncb Ann.suo
#-----------------------------------------------------------------------------
# Remove everthing that can be remade
#-----------------------------------------------------------------------------
realclean: clean
-rm -f bin/*

View File

@@ -0,0 +1,134 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="ann2fig"
ProjectGUID="{622DD7D8-0C0A-4303-9176-C9A8AF467E70}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="5"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="4"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="..\bin\ann2fig.exe"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/ann2fig.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
RuntimeLibrary="4"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="..\bin\ann2fig.exe"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
<File
RelativePath="..\..\ann2fig\ann2fig.cpp">
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -0,0 +1,452 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="dll"
SccProjectName=""
SccLocalPath="">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory=".\Debug"
IntermediateDirectory=".\Debug"
ConfigurationType="2"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DLL_EXPORTS;ANN_PERF;ANN_NO_RANDOM"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
PrecompiledHeaderThrough="stdafx.h"
PrecompiledHeaderFile=".\Debug/dll.pch"
AssemblerListingLocation=".\Debug/"
ObjectFile=".\Debug/"
ProgramDataBaseFileName=".\Debug/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
DebugInformationFormat="4"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="..\bin\ANN.dll"
LinkIncremental="0"
SuppressStartupBanner="TRUE"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile=".\Debug\ANN.pdb"
ImportLibrary=".\Debug\ANN.lib"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="TRUE"
SuppressStartupBanner="TRUE"
TargetEnvironment="1"
TypeLibraryName=".\Debug/dll.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="3081"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory=".\Release"
IntermediateDirectory=".\Release"
ConfigurationType="2"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DLL_EXPORTS;ANN_NO_RANDOM"
StringPooling="TRUE"
RuntimeLibrary="0"
EnableFunctionLevelLinking="TRUE"
UsePrecompiledHeader="0"
PrecompiledHeaderThrough="stdafx.h"
PrecompiledHeaderFile=".\Release/dll.pch"
AssemblerListingLocation=".\Release/"
ObjectFile=".\Release/"
ProgramDataBaseFileName=".\Release/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="..\bin\ANN.dll"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
ProgramDatabaseFile=".\Release\ANN.pdb"
ImportLibrary=".\Release\ANN.lib"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="TRUE"
SuppressStartupBanner="TRUE"
TargetEnvironment="1"
TypeLibraryName=".\Release/dll.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="3081"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
<File
RelativePath="..\..\src\ANN.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\bd_fix_rad_search.cpp">
</File>
<File
RelativePath="..\..\src\bd_pr_search.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\bd_search.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\bd_tree.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\brute.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\kd_dump.cpp">
</File>
<File
RelativePath="..\..\src\kd_fix_rad_search.cpp">
</File>
<File
RelativePath="..\..\src\kd_pr_search.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\kd_search.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\kd_split.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\kd_tree.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\kd_util.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\perf.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL;DLL_EXPORTS"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl">
<File
RelativePath="..\..\include\Ann\ANN.h">
</File>
<File
RelativePath="..\..\include\Ann\ANNperf.h">
</File>
<File
RelativePath="..\..\include\Ann\ANNx.h">
</File>
<File
RelativePath="..\..\src\bd_tree.h">
</File>
<File
RelativePath="..\..\src\kd_fix_rad_search.h">
</File>
<File
RelativePath="..\..\src\kd_pr_search.h">
</File>
<File
RelativePath="..\..\src\kd_search.h">
</File>
<File
RelativePath="..\..\src\kd_split.h">
</File>
<File
RelativePath="..\..\src\kd_tree.h">
</File>
<File
RelativePath="..\..\src\kd_util.h">
</File>
<File
RelativePath="..\..\src\pr_queue.h">
</File>
<File
RelativePath="..\..\src\pr_queue_k.h">
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
</Filter>
<File
RelativePath="ReadMe.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -0,0 +1,194 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="sample"
SccProjectName=""
SccLocalPath=""
Keyword="MFCProj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory=".\Debug"
IntermediateDirectory=".\Debug"
ConfigurationType="1"
UseOfMFC="2"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;ANN_NO_RANDOM;ANN_PERF"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
PrecompiledHeaderThrough="stdafx.h"
PrecompiledHeaderFile=".\Debug/sample.pch"
AssemblerListingLocation=".\Debug/"
ObjectFile=".\Debug/"
ProgramDataBaseFileName=".\Debug/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
DebugInformationFormat="4"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
OutputFile="..\bin\ann_sample.exe"
LinkIncremental="2"
SuppressStartupBanner="TRUE"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile=".\Debug/sample.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\Debug/sample.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="3081"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory=".\Release"
IntermediateDirectory=".\Release"
ConfigurationType="1"
UseOfMFC="2"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ANN_NO_RANDOM"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
UsePrecompiledHeader="0"
PrecompiledHeaderThrough="stdafx.h"
PrecompiledHeaderFile=".\Release/sample.pch"
AssemblerListingLocation=".\Release/"
ObjectFile=".\Release/"
ProgramDataBaseFileName=".\Release/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
OutputFile="..\bin\ann_sample.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
ProgramDatabaseFile=".\Release/sample.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\Release/sample.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="3081"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
<File
RelativePath="..\..\sample\ann_sample.cpp">
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl">
</Filter>
<Filter
Name="Test Data"
Filter="">
<File
RelativePath="data_pts">
<FileConfiguration
Name="Debug|Win32"
ExcludedFromBuild="TRUE">
<Tool
Name="VCCustomBuildTool"/>
</FileConfiguration>
</File>
<File
RelativePath="query_pts">
<FileConfiguration
Name="Debug|Win32"
ExcludedFromBuild="TRUE">
<Tool
Name="VCCustomBuildTool"/>
</FileConfiguration>
</File>
<File
RelativePath="sample.out">
<FileConfiguration
Name="Debug|Win32"
ExcludedFromBuild="TRUE">
<Tool
Name="VCCustomBuildTool"/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
</Filter>
<File
RelativePath="ReadMe.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -0,0 +1,220 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="test"
SccProjectName=""
SccLocalPath=""
Keyword="MFCProj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Release|Win32"
OutputDirectory=".\Release"
IntermediateDirectory=".\Release"
ConfigurationType="1"
UseOfMFC="2"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="NDEBUG;PREP;WIN32;_CONSOLE;ANN_NO_RANDOM"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
UsePrecompiledHeader="0"
PrecompiledHeaderThrough="stdafx.h"
PrecompiledHeaderFile=".\Release/test.pch"
AssemblerListingLocation=".\Release/"
ObjectFile=".\Release/"
ProgramDataBaseFileName=".\Release/"
WarningLevel="3"
SuppressStartupBanner="TRUE"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
OutputFile="..\bin\ann_test.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
ProgramDatabaseFile=".\Release/test.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\Release/test.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="3081"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
OutputDirectory=".\Debug"
IntermediateDirectory=".\Debug"
ConfigurationType="1"
UseOfMFC="2"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\include"
PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ANN_NO_RANDOM;ANN_PERF"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
PrecompiledHeaderThrough="stdafx.h"
PrecompiledHeaderFile=".\Debug/test.pch"
AssemblerListingLocation=".\Debug/"
ObjectFile=".\Debug/"
ProgramDataBaseFileName=".\Debug/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
DebugInformationFormat="4"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib"
OutputFile="..\bin\ann_test.exe"
LinkIncremental="2"
SuppressStartupBanner="TRUE"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile=".\Debug/test.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\Debug/test.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="3081"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
<File
RelativePath="..\..\test\ann_test.cpp">
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
PreprocessorDefinitions=""
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\test\rand.cpp">
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
PreprocessorDefinitions=""
UsePrecompiledHeader="0"/>
</FileConfiguration>
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
UsePrecompiledHeader="0"/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl">
<File
RelativePath="..\..\test\rand.h">
</File>
</Filter>
<Filter
Name="Test Data"
Filter="">
<File
RelativePath="test1.data">
</File>
<File
RelativePath="test1.in">
</File>
<File
RelativePath="test1.query">
</File>
<File
RelativePath="test2.in">
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
</Filter>
<File
RelativePath="ReadMe.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

194
src/3rdParty/ANN/Make-config vendored Normal file
View File

@@ -0,0 +1,194 @@
#-----------------------------------------------------------------------
# Makefile variations depending on different configurations
#
# ANN: Approximate Nearest Neighbors
# Version: 1.1 05/03/05
#
# (This Make-config structure is based on the one used by Mesa by Brian
# Paul. If you succeed in porting ANN to your favorite system, please
# send email to mount@cs.umd.edu, and I'll try to include it in this
# list.)
#
#----------------------------------------------------------------------
# The following configuration-dependent variables are passed to each
# the Makefile in subdirectories:
#
# ANNLIB The name of the ANN library file (usually libANN.a)
# C++ The C compiler (usually CC or g++)
# MAKELIB The command and flags to make a library file (usually
# "ar ...")
# CFLAGS Flags to C++ compiler
# RANLIB For "ranlib" = use ranlib, "true" = don't use ranlib
#----------------------------------------------------------------------
# Revision 0.1 09/06/97
# Initial release
# Revision 0.2 06/24/98
# Minor changes to fix compilation errors on SGI systems.
# Revision 1.0 04/01/05
# Modifications for alpha with cxx
# Removed CFLAGS2 options (just write your own)
# Removed -DUSING... (Compilers are pretty consistent these days)
# Added linux-g++ target
# Revision 1.1 05/03/05
# Added macosx-g++ target
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Compilation options (add these, as desired, to the CFLAGS variable
# in the desired compilation target below). For example,
#
# "CFLAGS = -O3 -Wall -DANN_PERF"
#
# -g Debugging.
# -O? Run-time optimization.
# -Wall Be verbose about warnings.
#
# -DANN_PERF Enable performance evaluation. (This may slow execution
# slightly.)
#
# -DANN_NO_LIMITS_H
# Use this if limits.h or float.h does not exist on your
# system. (Also see include/ANN/ANN.h for other changes
# needed.)
#
# -DANN_NO_RANDOM
# Use this option if srandom()/random() are not available
# on your system. Pseudo-random number generation is used
# in the utility program test/ann_test. The combination
# srandom()/random() is considered the best pseudo-random
# number generator, but is not available on all systems.
# If they are not available on your system (for example,
# Visual C++) then srand()/rand() will be used instead by
# setting this parameter.
#
# -DWIN32
# This is used only for compilation under windows systems
# (but instead of using this, use the various .vcproj
# files in the MS_WIN32 directory).
#-----------------------------------------------------------------------------
# Linux using g++
linux-g++:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -O3" \
"MAKELIB = ar ruv" \
"RANLIB = true"
# Mac OS X using g++
macosx-g++:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -O3" \
"MAKELIB = libtool -static -o " \
"RANLIB = true"
# SunOS5
sunos5:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = CC" \
"CFLAGS = -O" \
"MAKELIB = ar ruv" \
"RANLIB = true"
# SunOS5 with shared libraries
sunos5-sl:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = CC" \
"CFLAGS = -Kpic -O" \
"MAKELIB = ld -G -o" \
"RANLIB = true"
# SunOS5 with g++
sunos5-g++:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -O3" \
"MAKELIB = ar ruv" \
"RANLIB = true"
# SunOS5 with g++ and shared libraries
sunos5-g++-sl:
$(MAKE) targets \
"ANNLIB = libANN.so" \
"C++ = g++" \
"CFLAGS = -fpic -O3" \
"MAKELIB = ld -G -o" \
"RANLIB = true"
#-----------------------------------------------------------------------
# Used for the author's testing and debugging only
#-----------------------------------------------------------------------
# debugging version for authors
authors-debug:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -g -DANN_PERF -Wall" \
"MAKELIB = ar ruv" \
"RANLIB = true"
# performance testing version for authors
authors-perf:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -O3 -DANN_PERF -Wall" \
"MAKELIB = ar ruv" \
"RANLIB = true"
#-----------------------------------------------------------------------
# Some older ones that I have not tested with the latest version.
#-----------------------------------------------------------------------
sgi:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = CC -ansi" \
"CFLAGS = -O2" \
"MAKELIB = ar ruv" \
"RANLIB = true"
# DEC Alpha with g++
alpha-g++:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -O3" \
"MAKELIB = ar ruv" \
"RANLIB = ranlib"
# SunOS4
sunos4:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = CC" \
"CFLAGS = -O" \
"MAKELIB = ar ruv" \
"RANLIB = ranlib"
# SunOS4 with g++
sunos4-g++:
$(MAKE) targets \
"ANNLIB = libANN.a" \
"C++ = g++" \
"CFLAGS = -O3" \
"MAKELIB = ar ruv" \
"RANLIB = ranlib"
# SunOS4 with g++ and shared libraries
sunos4-g++-sl:
$(MAKE) targets \
"ANNLIB = libANN.so" \
"C++ = g++" \
"CC = g++" \
"CFLAGS = -fPIC -O3" \
"MAKELIB = ld -assert pure-text -o" \
"RANLIB = true"

68
src/3rdParty/ANN/ReadMe.txt vendored Normal file
View File

@@ -0,0 +1,68 @@
ANN: Approximate Nearest Neighbors
Version: 1.1.1
Release date: Aug 4, 2006
----------------------------------------------------------------------------
Copyright (c) 1997-2005 University of Maryland and Sunil Arya and David
Mount. All Rights Reserved. See Copyright.txt and License.txt for
complete information on terms and conditions of use and distribution of
this software.
----------------------------------------------------------------------------
Authors
-------
David Mount
Dept of Computer Science
University of Maryland,
College Park, MD 20742 USA
mount@cs.umd.edu
http://www.cs.umd.edu/~mount/
Sunil Arya
Dept of Computer Science
Hong University of Science and Technology
Clearwater Bay, HONG KONG
arya@cs.ust.hk
http://www.cs.ust.hk/faculty/arya/
Introduction
------------
ANN is a library written in the C++ programming language to support both
exact and approximate nearest neighbor searching in spaces of various
dimensions. It was implemented by David M. Mount of the University of
Maryland, and Sunil Arya of the Hong Kong University of Science and
Technology. ANN (pronounced like the name ``Ann'') stands for
Approximate Nearest Neighbors. ANN is also a testbed containing
programs and procedures for generating data sets, collecting and
analyzing statistics on the performance of nearest neighbor algorithms
and data structures, and visualizing the geometric structure of these
data structures.
The ANN source code and documentation is available from the following
web page:
http://www.cs.umd.edu/~mount/ANN
For more information on ANN and its use, see the ``ANN Programming
Manual,'' which is provided with the software distribution.
----------------------------------------------------------------------------
History
Version 0.1 03/04/98
Preliminary release
Version 0.2 06/24/98
Changes for SGI compiler.
Version 1.0 04/01/05
Fixed a number of small bugs
Added dump/load operations
Added annClose to eliminate minor memory leak
Improved compatibility with current C++ compilers
Added compilation for Microsoft Visual Studio.NET
Added compilation for Linux 2.x
Version 1.1 05/03/05
Added make target for Mac OS X
Added fixed-radius range searching and counting
Added instructions on compiling/using ANN on Windows platforms
Fixed minor output bug in ann2fig
Version 1.1.1 08/04/06
Added "planted" distribution
Updated old source comments for GNU LPL.

87
src/3rdParty/ANN/ann2fig/Makefile vendored Normal file
View File

@@ -0,0 +1,87 @@
#-----------------------------------------------------------------------------
# Makefile for ann2fig
#
# ANN: Approximate Nearest Neighbors
# Version: 1.1.1 08/04/06
#-----------------------------------------------------------------------------
# Copyright (c) 1997-2005 University of Maryland and Sunil Arya and
# David Mount. All Rights Reserved.
#
# This software and related documentation is part of the Approximate
# Nearest Neighbor Library (ANN). This software is provided under
# the provisions of the Lesser GNU Public License (LGPL). See the
# file ../ReadMe.txt for further information.
#
# The University of Maryland (U.M.) and the authors make no
# representations about the suitability or fitness of this software for
# any purpose. It is provided "as is" without express or implied
# warranty.
#-----------------------------------------------------------------------------
# Revision 0.1 03/04/98
# Initial release
# Revision 1.1.1 08/04/06
# Added copyright/license
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Basic definitions
# BASEDIR where include, src, lib, ... are
# INCDIR include directory
# LIBDIR library directory
# BINDIR bin directory
# LDFLAGS loader flags
# ANNLIB ANN library
# OTHERLIB other libraries
#-----------------------------------------------------------------------------
BASEDIR = ..
INCDIR = $(BASEDIR)/include
LIBDIR = $(BASEDIR)/lib
BINDIR = $(BASEDIR)/bin
LDFLAGS = -L$(LIBDIR)
ANNLIBS = -lANN
OTHERLIBS = -lm
#-----------------------------------------------------------------------------
# Some more definitions
# ANN2FIG name of executable
#-----------------------------------------------------------------------------
ANN2FIG = ann2fig
SOURCES = ann2fig.cpp
OBJECTS = $(SOURCES:.cpp=.o)
#-----------------------------------------------------------------------------
# Make the program
#-----------------------------------------------------------------------------
default:
@echo "Specify a target configuration"
targets: $(BINDIR)/$(ANN2FIG)
$(BINDIR)/$(ANN2FIG): $(OBJECTS)
$(C++) $(OBJECTS) -o $(ANN2FIG) $(LDFLAGS) $(ANNLIBS) $(OTHERLIBS)
mv $(ANN2FIG) $(BINDIR)
#-----------------------------------------------------------------------------
# configuration definitions
#-----------------------------------------------------------------------------
include ../Make-config
#-----------------------------------------------------------------------------
# Objects
#-----------------------------------------------------------------------------
ann2fig.o: ann2fig.cpp
$(C++) -c -I$(INCDIR) ann2fig.cpp
#-----------------------------------------------------------------------------
# Cleaning
#-----------------------------------------------------------------------------
clean:
-rm -f *.o core
realclean: clean

586
src/3rdParty/ANN/ann2fig/ann2fig.cpp vendored Normal file
View File

@@ -0,0 +1,586 @@
//----------------------------------------------------------------------
// File: ann2fig.cpp
// Programmer: David Mount
// Last modified: 05/03/05
// Description: convert ann dump file to fig file
//----------------------------------------------------------------------
// Copyright (c) 1997-2005 University of Maryland and Sunil Arya and
// David Mount. All Rights Reserved.
//
// This software and related documentation is part of the Approximate
// Nearest Neighbor Library (ANN). This software is provided under
// the provisions of the Lesser GNU Public License (LGPL). See the
// file ../ReadMe.txt for further information.
//
// The University of Maryland (U.M.) and the authors make no
// representations about the suitability or fitness of this software for
// any purpose. It is provided "as is" without express or implied
// warranty.
//----------------------------------------------------------------------
// History:
// Revision 0.1 03/04/98
// Initial release
// Revision 1.0 04/01/05
// Changed dump file suffix from .ann to .dmp.
// Revision 1.1 05/03/05
// Fixed usage output string.
//----------------------------------------------------------------------
// This program inputs an ann dump file of a search structure
// perhaps along with point coordinates, and outputs a fig (Ver 3.1)
// file (see fig2dev (1)) displaying the tree. The fig file may
// then be displayed using xfig, or converted to any of a number of
// other formats using fig2dev.
//
// If the dimension is 2 then the entire tree is display. If the
// dimension is larger than 2 then the user has the option of
// selecting which two dimensions will be displayed, and the slice
// value for each of the remaining dimensions. All leaf cells
// intersecting the slice are shown along with the points in these
// cells. See the procedure getArgs() below for the command-line
// arguments.
//----------------------------------------------------------------------
#include <cstdio> // C standard I/O
#include <fstream> // file I/O
#include <string> // string manipulation
#include <ANN/ANNx.h> // all ANN includes
using namespace std; // make std:: accessible
//----------------------------------------------------------------------
// Globals and their defaults
//----------------------------------------------------------------------
const int STRING_LEN = 500; // string lengths
const int MAX_DIM = 1000; // maximum dimension
const double DEF_SLICE_VAL = 0; // default slice value
const char FIG_HEAD[] = {"#FIG 3.1"}; // fig file header
const char DUMP_SUFFIX[] = {".dmp"}; // suffix for dump file
const char FIG_SUFFIX[] = {".fig"}; // suffix for fig file
char file_name[STRING_LEN]; // (root) file name (say xxx)
char infile_name[STRING_LEN];// input file name (xxx.dmp)
char outfile_name[STRING_LEN];// output file name (xxx.fig)
char caption[STRING_LEN]; // caption line (= command line)
ofstream ofile; // output file stream
ifstream ifile; // input file stream
int dim_x = 0; // horizontal dimension
int dim_y = 1; // vertical dimension
double slice_val[MAX_DIM]; // array of slice values
double u_per_in = 1200; // fig units per inch (version 3.1)
double in_size = 5; // size of figure (in inches)
double in_low_x = 1; // fig upper left corner (in inches)
double in_low_y = 1; // fig upper left corner (in inches)
double u_size = 6000; // size of figure (in units)
double u_low_x = 1200; // fig upper left corner (in units)
double u_low_y = 1200; // fig upper left corner (in units)
int pt_size = 10; // point size (in fig units)
int dim; // dimension
int n_pts; // number of points
ANNpointArray pts = NULL; // point array
double scale; // scale factor for transformation
double offset_x; // offsets for transformation
double offset_y;
// transformations
#define TRANS_X(p) (offset_x + scale*(p[dim_x]))
#define TRANS_Y(p) (offset_y - scale*(p[dim_y]))
//----------------------------------------------------------------------
// Error handler
//----------------------------------------------------------------------
void Error(char *msg, ANNerr level)
{
if (level == ANNabort) {
cerr << "ann2fig: ERROR------->" << msg << "<-------------ERROR\n";
exit(1);
}
else {
cerr << "ann2fig: WARNING----->" << msg << "<-------------WARNING\n";
}
}
//----------------------------------------------------------------------
// set_slice_val - set all slice values to given value
//----------------------------------------------------------------------
void set_slice_val(double val)
{
for (int i = 0; i < MAX_DIM; i++) {
slice_val[i] = val;
}
}
//----------------------------------------------------------------------
// getArgs - get input arguments
//
// Syntax:
// ann2fig [-upi scale] [-x low_x] [-y low_y]
// [-sz size] [-dx dim_x] [-dy dim_y] [-sl dim value]*
// [-ps pointsize]
// file
//
// where:
// -upi scale fig units per inch (default = 1200)
// -x low_x x and y offset of upper left corner (inches)
// -y low_y ...(default = 1)
// -sz size maximum side length of figure (in inches)
// ...(default = 5)
// -dx dim_x horizontal dimension (default = 0)
// -dy dim_y vertical dimension (default = 1)
// -sv value default slice value (default = 0)
// -sl dim value each such pair defines the value along the
// ...given dimension at which to slice. This
// ...may be supplied for all dimensions except
// ...dim_x and dim_y.
// -ps pointsize size of points in fig units (def = 10)
// file file (input=file.dmp, output=file.fig)
//
//----------------------------------------------------------------------
void getArgs(int argc, char **argv)
{
int i;
int sl_dim; // temp slice dimension
double sl_val; // temp slice value
set_slice_val(DEF_SLICE_VAL); // set initial slice-values
if (argc <= 1) {
cerr << "Syntax:\n\
ann2fig [-upi scale] [-x low_x] [-y low_y]\n\
[-sz size] [-dx dim_x] [-dy dim_y] [-sl dim value]*\n\
file\n\
\n\
where:\n\
-upi scale fig units per inch (default = 1200)\n\
-x low_x x and y offset of upper left corner (inches)\n\
-y low_y ...(default = 1)\n\
-sz size maximum side length of figure (in inches)\n\
...(default = 5)\n\
-dx dim_x horizontal dimension (default = 0)\n\
-dy dim_y vertical dimension (default = 1)\n\
-sv value default slice value (default = 0)\n\
-sl dim value each such pair defines the value along the\n\
...given dimension at which to slice. This\n\
...may be supplied for each dimension except\n\
...dim_x and dim_y.\n\
-ps pointsize size of points in fig units (def = 10)\n\
file file (input=file.dmp, output=file.fig)\n";
exit(0);
}
ANNbool fileSeen = ANNfalse; // file argument seen?
for (i = 1; i < argc; i++) {
if (!strcmp(argv[i], "-upi")) { // process -upi option
sscanf(argv[++i], "%lf", &u_per_in);
}
else if (!strcmp(argv[i], "-x")) { // process -x option
sscanf(argv[++i], "%lf", &in_low_x);
}
else if (!strcmp(argv[i], "-y")) { // process -y option
sscanf(argv[++i], "%lf", &in_low_y);
}
else if (!strcmp(argv[i], "-sz")) { // process -sz option
sscanf(argv[++i], "%lf", &in_size);
}
else if (!strcmp(argv[i], "-dx")) { // process -dx option
sscanf(argv[++i], "%d", &dim_x);
}
else if (!strcmp(argv[i], "-dy")) { // process -dy option
sscanf(argv[++i], "%d", &dim_y);
}
else if (!strcmp(argv[i], "-sv")) { // process -sv option
sscanf(argv[++i], "%lf", &sl_val);
set_slice_val(sl_val); // set slice values
}
else if (!strcmp(argv[i], "-sl")) { // process -sl option
sscanf(argv[++i], "%d", &sl_dim);
if (sl_dim < 0 || sl_dim >= MAX_DIM) {
Error("Slice dimension out of bounds", ANNabort);
}
sscanf(argv[++i], "%lf", &slice_val[sl_dim]);
}
if (!strcmp(argv[i], "-ps")) { // process -ps option
sscanf(argv[++i], "%i", &pt_size);
}
else { // must be file name
fileSeen = ANNtrue;
sscanf(argv[i], "%s", file_name);
strcpy(infile_name, file_name); // copy to input file name
strcat(infile_name, DUMP_SUFFIX);
strcpy(outfile_name, file_name); // copy to output file name
strcat(outfile_name, FIG_SUFFIX);
}
}
if (!fileSeen) { // no file seen
Error("File argument is required", ANNabort);
}
ifile.open(infile_name, ios::in); // open for reading
if (!ifile) {
Error("Cannot open input file", ANNabort);
}
ofile.open(outfile_name, ios::out); // open for writing
if (!ofile) {
Error("Cannot open output file", ANNabort);
}
u_low_x = u_per_in * in_low_x; // convert inches to fig units
u_low_y = u_per_in * in_low_y;
u_size = u_per_in * in_size;
strcpy(caption, argv[0]); // copy command line to caption
for (i = 1; i < argc; i++) {
strcat(caption, " ");
strcat(caption, argv[i]);
}
}
//----------------------------------------------------------------------
// Graphics utilities for fig output
//
// writeHeader write header for fig file
// writePoint write a point
// writeBox write a box
// writeLine write a line
//----------------------------------------------------------------------
void writeHeader()
{
ofile << FIG_HEAD << "\n" // fig file header
<< "Portrait\n"
<< "Center\n"
<< "Inches\n"
<< (int) u_per_in << " 2\n";
}
void writePoint(ANNpoint p) // write a single point
{
// filled black point object
ofile << "1 3 0 1 -1 7 0 0 0 0.000 1 0.0000 ";
int cent_x = (int) TRANS_X(p); // transform center coords
int cent_y = (int) TRANS_Y(p);
ofile << cent_x << " " << cent_y << " " // write center, radius, bounds
<< pt_size << " " << pt_size << " "
<< cent_x << " " << cent_y << " "
<< cent_x + pt_size << " " << cent_y + pt_size << "\n";
}
void writeBox(const ANNorthRect &r) // write box
{
// unfilled box object
ofile << "2 2 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 5\n";
int p0_x = (int) TRANS_X(r.lo); // transform endpoints
int p0_y = (int) TRANS_Y(r.lo);
int p1_x = (int) TRANS_X(r.hi);
int p1_y = (int) TRANS_Y(r.hi);
ofile << "\t"
<< p0_x << " " << p0_y << " " // write vertices
<< p1_x << " " << p0_y << " "
<< p1_x << " " << p1_y << " "
<< p0_x << " " << p1_y << " "
<< p0_x << " " << p0_y << "\n";
}
void writeLine(ANNpoint p0, ANNpoint p1) // write line
{
// unfilled line object
ofile << "2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 2\n";
int p0_x = (int) TRANS_X(p0); // transform endpoints
int p0_y = (int) TRANS_Y(p0);
int p1_x = (int) TRANS_X(p1);
int p1_y = (int) TRANS_Y(p1);
ofile << "\t"
<< p0_x << " " << p0_y << " " // write vertices
<< p1_x << " " << p1_y << "\n";
}
void writeCaption( // write caption text
const ANNorthRect &bnd_box, // bounding box
char *caption) // caption
{
if (!strcmp(caption, "\0")) return; // null string?
int px = (int) TRANS_X(bnd_box.lo); // put .5 in. lower left
int py = (int) (TRANS_Y(bnd_box.lo) + 0.50 * u_per_in);
ofile << "4 0 -1 0 0 0 20 0.0000 4 255 2000 ";
ofile << px << " " << py << " " << caption << "\\001\n";
}
//----------------------------------------------------------------------
// overlap - test whether a box overlap slicing region
//
// The slicing region is a 2-dimensional plane in space
// which contains points (x1, x2, ..., xn) satisfying the
// n-2 linear equalities:
//
// xi == slice_val[i] for i != dim_x, dim_y
//
// This procedure returns true of the box defined by
// corner points box.lo and box.hi overlap this plane.
//----------------------------------------------------------------------
ANNbool overlap(const ANNorthRect &box)
{
for (int i = 0; i < dim; i++) {
if (i != dim_x && i != dim_y &&
(box.lo[i] > slice_val[i] || box.hi[i] < slice_val[i]))
return ANNfalse;
}
return ANNtrue;
}
//----------------------------------------------------------------------
// readTree, recReadTree - inputs tree and outputs figure
//
// readTree procedure initializes things and then calls recReadTree
// which does all the work.
//
// recReadTree reads in a node of the tree, makes any recursive
// calls as needed to input the children of this node (if internal)
// and maintains the bounding box. Note that the bounding box
// is modified within this procedure, but it is the responsibility
// of the procedure that it be restored to its original value
// on return.
//
// Recall that these are the formats. The tree is given in
// preorder.
//
// Leaf node:
// leaf <n_pts> <bkt[0]> <bkt[1]> ... <bkt[n-1]>
// Splitting nodes:
// split <cut_dim> <cut_val> <lo_bound> <hi_bound>
// Shrinking nodes:
// shrink <n_bnds>
// <cut_dim> <cut_val> <side>
// <cut_dim> <cut_val> <side>
// ... (repeated n_bnds times)
//
// On reading a leaf we determine whether we should output the
// cell's points (if dimension = 2 or this cell overlaps the
// slicing region). For splitting nodes we check whether the
// current cell overlaps the slicing plane and whether the
// cutting dimension coincides with either the x or y drawing
// dimensions. If so, we output the corresponding splitting
// segment.
//----------------------------------------------------------------------
void recReadTree(ANNorthRect &box)
{
char tag[STRING_LEN]; // tag (leaf, split, shrink)
int n_pts; // number of points in leaf
int idx; // point index
int cd; // cut dimension
ANNcoord cv; // cut value
ANNcoord lb; // low bound
ANNcoord hb; // high bound
int n_bnds; // number of bounding sides
int sd; // which side
ifile >> tag; // input node tag
if (strcmp(tag, "leaf") == 0) { // leaf node
ifile >> n_pts; // input number of points
// check for overlap
if (dim == 2 || overlap(box)) {
for (int i = 0; i < n_pts; i++) { // yes, write the points
ifile >> idx;
writePoint(pts[idx]);
}
}
else { // input but ignore points
for (int i = 0; i < n_pts; i++) {
ifile >> idx;
}
}
}
else if (strcmp(tag, "split") == 0) { // splitting node
ifile >> cd >> cv >> lb >> hb;
if (lb != box.lo[cd] || hb != box.hi[cd]) {
Error("Bounding box coordinates are fishy", ANNwarn);
}
ANNcoord lv = box.lo[cd]; // save bounds for cutting dim
ANNcoord hv = box.hi[cd];
//--------------------------------------------------------------
// The following code is rather fragile so modify at your
// own risk. We first decrease the high-end of the bounding
// box down to the cutting plane and then read the left subtree.
// Then we increase the low-end of the bounding box up to the
// cutting plane (thus collapsing the bounding box to a d-1
// dimensional hyperrectangle). Then we draw the projection of
// its diagonal if it crosses the slicing plane. This will have
// the effect of drawing its intersection on the slicing plane.
// Then we restore the high-end of the bounding box and read
// the right subtree. Finally we restore the low-end of the
// bounding box, before returning.
//--------------------------------------------------------------
box.hi[cd] = cv; // decrease high bounds
recReadTree(box); // read left subtree
// check for overlap
box.lo[cd] = cv; // increase low bounds
if (dim == 2 || overlap(box)) { // check for overlap
if (cd == dim_x || cd == dim_y) { // cut through slice plane
writeLine(box.lo, box.hi); // draw cutting line
}
}
box.hi[cd] = hv; // restore high bounds
recReadTree(box); // read right subtree
box.lo[cd] = lv; // restore low bounds
}
else if (strcmp(tag, "shrink") == 0) { // splitting node
ANNorthRect inner(dim, box); // copy bounding box
ifile >> n_bnds; // number of bounding sides
for (int i = 0; i < n_bnds; i++) {
ifile >> cd >> cv >> sd; // input bounding halfspace
ANNorthHalfSpace hs(cd, cv, sd); // create orthogonal halfspace
hs.project(inner.lo); // intersect by projecting
hs.project(inner.hi);
}
if (dim == 2 || overlap(inner)) {
writeBox(inner); // draw inner rectangle
}
recReadTree(inner); // read inner subtree
recReadTree(box); // read outer subtree
}
else {
Error("Illegal node type in dump file", ANNabort);
}
}
void readTree(ANNorthRect &bnd_box)
{
writeHeader(); // output header
writeBox(bnd_box); // draw bounding box
writeCaption(bnd_box, caption); // write caption
recReadTree(bnd_box); // do it
}
//----------------------------------------------------------------------
// readANN - read the ANN dump file
//
// This procedure reads in the dump file. See the format below.
// It first reads the header line with version number. If the
// points section is present it reads them (otherwise just leaves
// points = NULL), and then it reads the tree section. It inputs
// the bounding box and determines the parameters for transforming
// the image to figure units. It then invokes the procedure
// readTree to do all the real work.
//
// Dump File Format: <xxx> = coordinate value (ANNcoord)
//
// #ANN <version number> <comments> [END_OF_LINE]
// points <dim> <n_pts> (point coordinates: this is optional)
// 0 <xxx> <xxx> ... <xxx> (point indices and coordinates)
// 1 <xxx> <xxx> ... <xxx>
// ...
// tree <dim> <n_pts> <bkt_size>
// <xxx> <xxx> ... <xxx> (lower end of bounding box)
// <xxx> <xxx> ... <xxx> (upper end of bounding box)
// If the tree is null, then a single line "null" is
// output. Otherwise the nodes of the tree are printed
// one per line in preorder. Leaves and splitting nodes
// have the following formats:
// Leaf node:
// leaf <n_pts> <bkt[0]> <bkt[1]> ... <bkt[n-1]>
// Splitting nodes:
// split <cut_dim> <cut_val> <lo_bound> <hi_bound>
// Shrinking nodes:
// shrink <n_bnds>
// <cut_dim> <cut_val> <side>
// <cut_dim> <cut_val> <side>
// ... (repeated n_bnds times)
//
// Note: Infinite lo_ and hi_bounds are printed as the special
// values "-INF" and "+INF", respectively. We do not
// check for this, because the current version of ANN
// starts with a finite bounding box if the tree is
// nonempty.
//----------------------------------------------------------------------
void readANN()
{
int j;
char str[STRING_LEN]; // storage for string
char version[STRING_LEN]; // storage for version
int bkt_size; // bucket size
ifile >> str; // input header
if (strcmp(str, "#ANN") != 0) { // incorrect header
Error("Incorrect header for dump file", ANNabort);
}
ifile.getline(version, STRING_LEN); // get version (ignore)
ifile >> str; // get major heading
if (strcmp(str, "points") == 0) { // points section
ifile >> dim; // read dimension
ifile >> n_pts; // number of points
pts = annAllocPts(n_pts, dim); // allocate points
for (int i = 0; i < n_pts; i++) { // input point coordinates
int idx; // point index
ifile >> idx; // input point index
if (idx < 0 || idx >= n_pts) {
Error("Point index is out of range", ANNabort);
}
for (j = 0; j < dim; j++) {
ifile >> pts[idx][j]; // read point coordinates
}
}
ifile >> str; // get next major heading
}
if (strcmp(str, "tree") == 0) { // tree section
ifile >> dim; // read dimension
if (dim_x > dim || dim_y > dim) {
Error("Dimensions out of bounds", ANNabort);
}
ifile >> n_pts; // number of points
ifile >> bkt_size; // bucket size (ignored)
// read bounding box
ANNorthRect bnd_box(dim); // create bounding box
for (j = 0; j < dim; j++) {
ifile >> bnd_box.lo[j]; // read box low coordinates
}
for (j = 0; j < dim; j++) {
ifile >> bnd_box.hi[j]; // read box high coordinates
}
// compute scaling factors
double box_len_x = bnd_box.hi[dim_x] - bnd_box.lo[dim_x];
double box_len_y = bnd_box.hi[dim_y] - bnd_box.lo[dim_y];
// longer side determines scale
if (box_len_x > box_len_y) scale = u_size/box_len_x;
else scale = u_size/box_len_y;
// compute offsets
offset_x = u_low_x - scale*bnd_box.lo[dim_x];
offset_y = u_low_y + scale*bnd_box.hi[dim_y];
readTree(bnd_box); // read the tree and process
}
else if (strcmp(str, "null") == 0) return; // empty tree
else {
cerr << "Input string: " << str << "\n";
Error("Illegal ann format. Expecting section heading", ANNabort);
}
}
//----------------------------------------------------------------------
// Main program
//
// Gets the command-line arguments and invokes the main scanning
// procedure.
//----------------------------------------------------------------------
int main(int argc, char **argv)
{
getArgs(argc, argv); // get input arguments
readANN(); // read the dump file
return 0;
}

Some files were not shown because too many files have changed in this diff Show More