PORTNAME= zcad PORTVERSION= 0.9.8.5 PORTREVISION= 15 CATEGORIES= cad PKGNAMESUFFIX= ${LAZARUS_PKGNAMESUFFIX} MAINTAINER= danfe@FreeBSD.org COMMENT= Simple CAD program BROKEN= Can't find unit TransferMacros used by uzmacros ONLY_FOR_ARCHS= i386 amd64 USES= dos2unix fpc lazarus:flavors tar:xz USE_GITHUB= yes GH_ACCOUNT= zamtmn GH_TAGNAME= 8b8a693 MAKE_ENV= LAZBUILD_CMD="${LAZBUILD_CMD}" \ LAZBUILD_ARGS="${LAZBUILD_ARGS}" \ LCL_PLATFORM="${LCL_PLATFORM}" \ LAZARUS_DIR="${LAZARUS_DIR}" \ INSTANTFPCCACHE="${WRKSRC}/.cache" DOS2UNIX_GLOB= *.pas *.lpi BUILD_WRKSRC= ${WRKSRC}/cad_source INSTALL_WRKSRC= ${WRKSRC}/cad LAZARUS_NO_FLAVORS= qt6 LAZARUS_PROJECT_FILES= anchordocking/anchordocking.lpk \ fpvectorial/fpvectorialpkg.lpk \ lclextensions/lclextensions_package.lpk \ other/laz.virtualtreeview_package/laz.virtualtreeview_package.lpk \ components/zmacros/zmacros.lpk \ components/zebase/zebase.lpk \ components/zcontainers/zcontainers.lpk \ components/zcontrols/zcontrols.lpk \ components/zmath/zmath.lpk \ components/zscriptbase/zscriptbase.lpk \ components/zscript/zscript.lpk \ components/zundostack/zundostack.lpk \ components/zobjectinspector/zobjectinspector.lpk \ components/ztoolbars/ztoolbars.lpk \ other/AGraphLaz/lazarus/ag_vectors.lpk \ other/AGraphLaz/lazarus/ag_attr.lpk \ other/AGraphLaz/lazarus/ag_math.lpk \ other/AGraphLaz/lazarus/ag_graph.lpk \ other/uniqueinstance/uniqueinstance_package.lpk \ utils/typeexporter.lpi LAZBUILD_ARGS= -d --pcp=${WRKSRC}/tmppcp gtk2_CONFLICTS_INSTALL= ${PORTNAME}-qt5 qt5_CONFLICTS_INSTALL= ${PORTNAME}-gtk2 PORTDOCS= UserGuide.odt UserGuide.pdf OPTIONS_DEFINE= DOCS .if ${FLAVOR:Ugtk2:Mgtk2} MAKE_ENV+= GUI=gtk2 .endif post-patch: @${EGREP} -lR 'IFN?DEF LINUX' ${WRKSRC} | ${XARGS} \ ${REINPLACE_CMD} -E '/IFN?DEF LINUX/s,LINUX,UNIX,g' @${REINPLACE_CMD} -e '/}Linux{/d' \ ${BUILD_WRKSRC}/other/AGraphLaz/Vectors/VStream.pas \ ${BUILD_WRKSRC}/other/AGraphLaz/Vectors/VFStream.pas \ ${BUILD_WRKSRC}/other/AGraphLaz/Vectors/VFileSys.pas \ ${BUILD_WRKSRC}/other/AGraphLaz/Vectors/VStrm64.pas @${REINPLACE_CMD} -e 's|LazOpenGLContext|openglcontext.pas|g' \ ${BUILD_WRKSRC}/zcad.lpi @${REINPLACE_CMD} -e "s|'|'|g" \ ${BUILD_WRKSRC}/other/laz.virtualtreeview_package/laz.virtualtreeview_package.lpk @${REINPLACE_CMD} '1,6d' ${WRKSRC}/environment/makeenv_zcad.sh post-configure: # OpenGL component must be fixed and rebuilt locally (to avoid touching # filesystem outside working directory) ${SED} -e 's,@paintGL,paintGL,' \ ${LAZARUS_DIR}/components/opengl/qlclopenglwidget.pas \ > ${BUILD_WRKSRC}/qlclopenglwidget.pas ${CP} ${LAZARUS_DIR}/components/opengl/glgtkglxcontext.pas \ ${LAZARUS_DIR}/components/opengl/glqtcontext.pas \ ${LAZARUS_DIR}/components/opengl/openglcontext.* \ ${BUILD_WRKSRC} # Build components that do not come with precompiled *.ppu files (also # copy them locally first for the same reason as above) ${CP} -a ${LAZARUS_DIR}/components/fpvectorial \ ${LAZARUS_DIR}/components/anchordocking \ ${LAZARUS_DIR}/components/lclextensions ${BUILD_WRKSRC} post-build: @${MKDIR} ${WRKSRC}/cad @${MKDIR} ${WRKSRC}/cad_source/autogenerated @${CP} -a ${WRKSRC}/environment/runtimefiles/common/* ${WRKSRC}/cad @${CP} -a ${WRKSRC}/environment/runtimefiles/zcad/* ${WRKSRC}/cad @cd ${WRKSRC}/environment && ${SH} makeenv_zcad.sh @cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${LAZBUILD_CMD} \ ${LAZBUILD_ARGS} --ws=${LCL_PLATFORM} \ --lazarusdir=${LAZARUS_DIR} zcad.lpi do-install: # Not ready for hier(7)-conforming installation yet @${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME} ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bin/${BUILDNAME}/${PORTNAME} \ ${STAGEDIR}${PREFIX}/${PORTNAME} cd ${INSTALL_WRKSRC} && ${COPYTREE_SHARE} "autosave components \ fonts images languages log menu plugins rtl sample \ template" ${STAGEDIR}${PREFIX}/${PORTNAME} do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${BUILD_WRKSRC}/userguide/UserGuide.odt \ ${INSTALL_WRKSRC}/UserGuide.pdf ${STAGEDIR}${DOCSDIR} .include PATCH_ARGS+= -l