Prepare Windows build to use FreeType
This commit is contained in:
parent
3e5ee466a8
commit
32117fb980
|
@ -83,3 +83,7 @@ because it contains some Fortran code.
|
|||
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.
|
||||
|
||||
* FreeType
|
||||
|
||||
http://stackoverflow.com/questions/6207176/compiling-freetype-to-dll-as-opposed-to-static-library
|
||||
|
|
|
@ -394,5 +394,19 @@ SET(EIGEN3_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/eigen3)
|
|||
set(EIGEN3_FOUND TRUE)
|
||||
|
||||
|
||||
|
||||
|
||||
# FreeType
|
||||
if(FREECAD_USE_FREETYPE)
|
||||
set(FREETYPE_LIBRARIES
|
||||
optimized ${FREECAD_LIBPACK_DIR}/lib/freetype.lib
|
||||
debug ${FREECAD_LIBPACK_DIR}/lib/freetyped.lib
|
||||
)
|
||||
set(FREETYPE_INCLUDE_DIRS
|
||||
${FREECAD_LIBPACK_DIR}/include/FreeType-2.4.12
|
||||
)
|
||||
set(FREETYPE_VERSION_STRING
|
||||
"2.4.12"
|
||||
)
|
||||
set(FREETYPE_FOUND
|
||||
TRUE
|
||||
)
|
||||
endif(FREECAD_USE_FREETYPE)
|
||||
|
|
|
@ -323,72 +323,72 @@ set(NGLIB_DEBUG_LIBRARIES
|
|||
#set(OCC_INCLUDE_DIR C:/Projects/LibPack/oce-0.10.0/include/oce)
|
||||
#set(OCC_LIBRARY_DIR C:/Projects/LibPack/oce-0.10.0/Win64/lib)
|
||||
#set(OCC_LIBRARIES
|
||||
# ${OCC_LIBRARY_DIR}/TKFillet.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKMesh.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKernel.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKG2d.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKG3d.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKMath.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKIGES.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTL.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKShHealing.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXSBase.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKBool.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKBO.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKBRep.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKTopAlgo.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKGeomAlgo.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKGeomBase.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKOffset.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKPrim.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTEP.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTEPBase.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTEPAttr.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKHLR.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKFeat.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKFillet.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKMesh.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKernel.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKG2d.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKG3d.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKMath.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKIGES.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTL.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKShHealing.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXSBase.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKBool.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKBO.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKBRep.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKTopAlgo.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKGeomAlgo.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKGeomBase.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKOffset.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKPrim.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTEP.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTEPBase.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKSTEPAttr.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKHLR.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKFeat.lib
|
||||
#)
|
||||
#set(OCC_OCAF_LIBRARIES
|
||||
# ${OCC_LIBRARY_DIR}/TKCAF.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXCAF.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKLCAF.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXDESTEP.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXDEIGES.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKCAF.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXCAF.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKLCAF.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXDESTEP.lib
|
||||
# ${OCC_LIBRARY_DIR}/TKXDEIGES.lib
|
||||
#)
|
||||
set(OCC_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/OpenCascade-6.3.0)
|
||||
set(OCC_LIBRARY_DIR ${FREECAD_LIBPACK_DIR}/lib)
|
||||
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
|
||||
TKFeat
|
||||
TKFillet
|
||||
TKMesh
|
||||
TKernel
|
||||
TKG2d
|
||||
TKG3d
|
||||
TKMath
|
||||
TKIGES
|
||||
TKSTL
|
||||
TKShHealing
|
||||
TKXSBase
|
||||
TKBool
|
||||
TKBO
|
||||
TKBRep
|
||||
TKTopAlgo
|
||||
TKGeomAlgo
|
||||
TKGeomBase
|
||||
TKOffset
|
||||
TKPrim
|
||||
TKSTEP
|
||||
TKSTEPBase
|
||||
TKSTEPAttr
|
||||
TKHLR
|
||||
TKFeat
|
||||
)
|
||||
set(OCC_OCAF_LIBRARIES
|
||||
TKCAF
|
||||
TKXCAF
|
||||
TKLCAF
|
||||
TKXDESTEP
|
||||
TKXDEIGES
|
||||
TKMeshVS
|
||||
TKAdvTools
|
||||
TKCAF
|
||||
TKXCAF
|
||||
TKLCAF
|
||||
TKXDESTEP
|
||||
TKXDEIGES
|
||||
TKMeshVS
|
||||
TKAdvTools
|
||||
)
|
||||
set(OCC_FOUND TRUE)
|
||||
|
||||
|
@ -402,5 +402,19 @@ 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)
|
||||
|
||||
|
||||
|
||||
# FreeType
|
||||
if(FREECAD_USE_FREETYPE)
|
||||
set(FREETYPE_LIBRARIES
|
||||
optimized ${FREECAD_LIBPACK_DIR}/lib/freetype.lib
|
||||
debug ${FREECAD_LIBPACK_DIR}/lib/freetyped.lib
|
||||
)
|
||||
set(FREETYPE_INCLUDE_DIRS
|
||||
${FREECAD_LIBPACK_DIR}/include/FreeType-2.4.12
|
||||
)
|
||||
set(FREETYPE_VERSION_STRING
|
||||
"2.4.12"
|
||||
)
|
||||
set(FREETYPE_FOUND
|
||||
TRUE
|
||||
)
|
||||
endif(FREECAD_USE_FREETYPE)
|
||||
|
|
|
@ -1699,13 +1699,6 @@ def makeShapeString(String,FontFile,Size = 100,Tracking = 0):
|
|||
into a Compound Shape'''
|
||||
|
||||
# temporary code
|
||||
import platform
|
||||
if not (platform.system() == 'Linux'):
|
||||
# if (platform.system() == 'Linux'):
|
||||
FreeCAD.Console.PrintWarning("Sorry, ShapeString is not yet implemented for your platform.\n")
|
||||
return (None)
|
||||
# temporary code
|
||||
|
||||
obj = FreeCAD.ActiveDocument.addObject("Part::Part2DObjectPython","ShapeString")
|
||||
_ShapeString(obj)
|
||||
obj.String = String
|
||||
|
|
|
@ -1795,7 +1795,7 @@ class ShapeString(Creator):
|
|||
def GetResources(self):
|
||||
return {'Pixmap' : 'Draft_ShapeString',
|
||||
'Accel' : "S, S",
|
||||
'MenuShapeString': QtCore.QT_TRANSLATE_NOOP("Draft_ShapeString", "ShapeString"),
|
||||
'MenuText': QtCore.QT_TRANSLATE_NOOP("Draft_ShapeString", "Shape from text..."),
|
||||
'ToolTip': QtCore.QT_TRANSLATE_NOOP("Draft_ShapeString", "Creates text string in shapes.")}
|
||||
|
||||
def Activated(self):
|
||||
|
@ -1817,12 +1817,11 @@ class ShapeString(Creator):
|
|||
"creates object in the current doc"
|
||||
# print "debug: D_T ShapeString.createObject type(self.SString): " str(type(self.SString))
|
||||
# temporary code
|
||||
import platform
|
||||
if not (platform.system() == 'Linux'):
|
||||
# if (platform.system() == 'Linux'):
|
||||
FreeCAD.Console.PrintWarning("Sorry, ShapeString is not yet fully implemented for your platform.\n")
|
||||
self.finish()
|
||||
return
|
||||
#import platform
|
||||
#if not (platform.system() == 'Linux'):
|
||||
# FreeCAD.Console.PrintWarning("Sorry, ShapeString is not yet fully implemented for your platform.\n")
|
||||
# self.finish()
|
||||
# return
|
||||
# temporary code
|
||||
|
||||
dquote = '"'
|
||||
|
|
|
@ -342,17 +342,17 @@ static PyObject * makeWireString(PyObject *self, PyObject *args)
|
|||
&track)) {
|
||||
Base::Console().Message("** makeWireString bad args.\n");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
if (PyString_Check(intext)) {
|
||||
PyObject *p = Base::PyAsUnicodeObject(PyString_AsString(intext));
|
||||
if (!p) {
|
||||
Base::Console().Message("** makeWireString can't convert PyString.\n");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
pysize = PyUnicode_GetSize(p);
|
||||
unichars = PyUnicode_AS_UNICODE(p);
|
||||
}
|
||||
}
|
||||
else if (PyUnicode_Check(intext)) {
|
||||
pysize = PyUnicode_GetSize(intext);
|
||||
unichars = PyUnicode_AS_UNICODE(intext);
|
||||
|
@ -376,7 +376,7 @@ static PyObject * makeWireString(PyObject *self, PyObject *args)
|
|||
|
||||
return (CharList);
|
||||
}
|
||||
#else
|
||||
#else
|
||||
|
||||
static PyObject * makeWireString(PyObject *self, PyObject *args)
|
||||
{
|
||||
|
|
|
@ -4,9 +4,9 @@ else(MSVC)
|
|||
add_definitions(-DHAVE_LIMITS_H -DHAVE_CONFIG_H)
|
||||
endif(MSVC)
|
||||
|
||||
if(FREECAD_USE_FREETYPE)
|
||||
add_definitions(-DFCUseFreeType)
|
||||
endif(FREECAD_USE_FREETYPE)
|
||||
if(FREETYPE_FOUND)
|
||||
add_definitions(-DFCUseFreeType)
|
||||
endif(FREETYPE_FOUND)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_BINARY_DIR}/src
|
||||
|
@ -28,12 +28,12 @@ set(Part_LIBS
|
|||
FreeCADApp
|
||||
)
|
||||
|
||||
if(FREECAD_USE_FREETYPE)
|
||||
if(FREETYPE_FOUND)
|
||||
set(Part_LIBS
|
||||
${Part_LIBS}
|
||||
${FREETYPE_LIBRARY}
|
||||
${FREETYPE_LIBRARIES}
|
||||
)
|
||||
endif(FREECAD_USE_FREETYPE)
|
||||
endif(FREETYPE_FOUND)
|
||||
|
||||
generate_from_xml(ArcPy)
|
||||
generate_from_xml(ArcOfCirclePy)
|
||||
|
|
|
@ -330,11 +330,11 @@ FT_Vector getKerning(FT_Face FTFont, UNICHAR lc, UNICHAR rc) {
|
|||
if(error) {
|
||||
ErrorMsg << "FT_Get_Kerning failed: " << error;
|
||||
throw std::runtime_error(ErrorMsg.str());
|
||||
}
|
||||
}
|
||||
retXY.x = ftKern.x;
|
||||
retXY.y = ftKern.y;
|
||||
return(retXY);
|
||||
}
|
||||
}
|
||||
|
||||
// Make a TopoDS_Wire from a list of TopoDS_Edges
|
||||
TopoShapeWirePy* edgesToWire(std::vector<TopoDS_Edge> Edges) {
|
||||
|
@ -350,7 +350,7 @@ TopoShapeWirePy* edgesToWire(std::vector<TopoDS_Edge> Edges) {
|
|||
TopoShapeWirePy* newwire = new TopoShapeWirePy(new TopoShape (occwire));
|
||||
|
||||
return(newwire);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#endif //#ifdef FCUseFreeType
|
||||
#endif //#ifdef FCUseFreeType
|
||||
|
|
Loading…
Reference in New Issue
Block a user