Date: Tue, 2 May 2017 18:50:36 +0000 (UTC) From: Alexey Dokuchaev <danfe@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r439964 - in head/cad: . zcad zcad/files Message-ID: <201705021850.v42IoaBS007920@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: danfe Date: Tue May 2 18:50:35 2017 New Revision: 439964 URL: https://svnweb.freebsd.org/changeset/ports/439964 Log: Add a port of ZCAD, simple CAD program with AutoCAD DXF 2000 file format support. It is developed with Free Pascal and Lazarus. The project has not released any distfiles yet, so this release is based on r2259 checked out from http://svn.shamangrad.net/zcad/trunk/, cleaned up (most importantly, converted to Unix line endings), and tar+xz'ed. https://sourceforge.net/projects/zcad/ Added: head/cad/zcad/ head/cad/zcad/Makefile (contents, props changed) head/cad/zcad/distinfo (contents, props changed) head/cad/zcad/files/ head/cad/zcad/files/makefile (contents, props changed) head/cad/zcad/files/patch-cad__source_components_zebase_uzbpaths.pas (contents, props changed) head/cad/zcad/files/patch-cad__source_other_AGraphLaz_Vectors_ExtSys.pas (contents, props changed) head/cad/zcad/files/patch-cad__source_zcad.lpi (contents, props changed) head/cad/zcad/files/patch-cad__source_zcad_commands_uzccombase.pas (contents, props changed) head/cad/zcad/files/patch-cad__source_zcad_commands_uzccominterface.pas (contents, props changed) head/cad/zcad/files/patch-cad__source_zcad_gui_uzcmainwindow.pas (contents, props changed) head/cad/zcad/files/patch-cad__source_zcad_uzclog.pas (contents, props changed) head/cad/zcad/files/patch-cad__source_zcad_uzcsysinfo.pas (contents, props changed) head/cad/zcad/pkg-descr (contents, props changed) head/cad/zcad/pkg-plist (contents, props changed) Modified: head/cad/Makefile Modified: head/cad/Makefile ============================================================================== --- head/cad/Makefile Tue May 2 17:47:44 2017 (r439963) +++ head/cad/Makefile Tue May 2 18:50:35 2017 (r439964) @@ -92,5 +92,6 @@ SUBDIR += verilog-mode.el SUBDIR += xcircuit SUBDIR += z88 + SUBDIR += zcad .include <bsd.port.subdir.mk> Added: head/cad/zcad/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/Makefile Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,93 @@ +# Created by: Alexey Dokuchaev <danfe@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= zcad +PORTVERSION= 0.9.8 +CATEGORIES= cad +MASTER_SITES= LOCAL/danfe +DISTNAME= ${PORTNAME}-trunk-r2259 + +MAINTAINER= danfe@FreeBSD.org +COMMENT= Simple CAD program + +BUILD_DEPENDS= lazbuild:editors/lazarus + +USES= tar:xz +USE_FPC= cairo fcl-base fcl-image fcl-json fcl-stl fcl-xml opengl \ + pasjpeg rtl-extra rtl-objpas x11 + +LAZARUS_VER= 1.6.4 +LAZBUILD_CMD= ${LOCALBASE}/bin/lazbuild -d --pcp=${WRKSRC}/tmppcp \ + --lazarusdir=${LAZARUS_DIR} +LAZARUS_DIR= ${LOCALBASE}/share/lazarus-${LAZARUS_VER} +LCL_UNITS_DIR= ${LAZARUS_DIR}/lcl/units/${BUILDNAME} + +EXTRACT_CMD= LC_ALL=en_US.UTF-8 ${TAR} # for non-ASCII filenames + +MAKE_ENV= LAZBUILD_CMD="${LAZBUILD_CMD}" + +WRKSRC= ${WRKDIR}/trunk +BUILD_WRKSRC= ${WRKSRC}/cad_source +INSTALL_WRKSRC= ${WRKSRC}/cad + +MAKE_JOBS_UNSAFE= yes + +PORTDOCS= UserGuide.odt UserGuide.pdf + +OPTIONS_DEFINE= DOCS +OPTIONS_SINGLE= GUI +OPTIONS_SINGLE_GUI= GTK2 QT4 +OPTIONS_DEFAULT= GTK2 + +GTK2_BUILD_DEPENDS= ${LCL_UNITS_DIR}/gtk2/interfaces.ppu:editors/lazarus-lcl-gtk2 +GTK2_USE= GNOME=gtk20 FPC=gtk2 +GTK2_MAKE_ENV= GUI=gtk2 +GTK2_VARS= LAZBUILD_CMD+=--ws=gtk2 + +QT4_BUILD_DEPENDS= ${LCL_UNITS_DIR}/qt/interfaces.ppu:editors/lazarus-lcl-qt +QT4_LIB_DEPENDS= libQt4Pas.so:x11-toolkits/qt4pas +QT4_MAKE_ENV= GUI=qt +QT4_VARS= LAZBUILD_CMD+=--ws=qt + +post-patch: + @${EGREP} -lR 'IFN?DEF LINUX' ${BUILD_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 + ${CP} ${FILESDIR}/makefile ${BUILD_WRKSRC}/Makefile + +pre-build: +# OpenGL component must be fixed and rebuilt locally (to avoid touching +# filesystem outside working directory) + ${SED} -e 's,Linux,${OPSYS},' \ + ${LAZARUS_DIR}/components/opengl/openglcontext.pas \ + > ${BUILD_WRKSRC}/openglcontext.pas + ${CP} ${LAZARUS_DIR}/components/opengl/glgtkglxcontext.pas \ + ${LAZARUS_DIR}/components/opengl/glqtcontext.pas \ + ${LAZARUS_DIR}/components/opengl/openglcontext.res \ + ${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 ${WRKSRC} + ${LAZBUILD_CMD} ${WRKSRC}/fpvectorial/fpvectorialpkg.lpk + ${LAZBUILD_CMD} ${WRKSRC}/anchordocking/anchordocking.lpk + +do-install: +# Not ready for hier(7)-conforming installation yet + @${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME} + ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/${PORTNAME} \ + ${STAGEDIR}${PREFIX}/${PORTNAME} + cd ${INSTALL_WRKSRC} && ${COPYTREE_SHARE} "blocks components \ + fonts images languages menu programdb 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 <bsd.port.mk> Added: head/cad/zcad/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/distinfo Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,3 @@ +TIMESTAMP = 1493632254 +SHA256 (zcad-trunk-r2259.tar.xz) = 9e441aee52313b8b6eb380dd3a92a9c61e35ff0c9f0bc9e71abc38c4579faff2 +SIZE (zcad-trunk-r2259.tar.xz) = 8789888 Added: head/cad/zcad/files/makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/makefile Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,85 @@ +# $FreeBSD$ + +OUTSUFX= lib/$(ARCH)-$(OPSYS:tl) + +# XXX: sometimes the build crashes with ``An unhandled exception occurred +# at $0814EBB3'' message (EAccessViolation: Access violation). It might +# be some concurrency issue, but it occurs even with MAKE_JOBS_UNSAFE, so +# use the following simple workaround for the time being. +ZEALOUS_BUILD= sh -c 'i=0 ; until $(LAZBUILD_CMD) $$0 ; do \ + test $$i -lt 4 || return ; i=$$((i+1)) ; done' + +all: ../$(OUTSUFX)/zcad.compiled + +ZCAD_DEPS= \ + other/AGraphLaz/lazarus/$(OUTSUFX)/ag_graph.compiled \ + other/VirtualTreeView-Lazarus/Source/$(OUTSUFX)-$(GUI)/virtualtreeview_package.compiled \ + components/zmath/$(OUTSUFX)/zmath.compiled \ + components/zobjectinspector/$(OUTSUFX)/zobjectinspector.compiled + +AG_GRAPH_DEPS= \ + other/AGraphLaz/lazarus/$(OUTSUFX)/ag_vectors.compiled \ + other/AGraphLaz/lazarus/$(OUTSUFX)/ag_attr.compiled \ + other/AGraphLaz/lazarus/$(OUTSUFX)/ag_math.compiled \ + +VTV_DEPS= \ + other/lclextensions/$(OUTSUFX)-$(GUI)/lclextensions_package.compiled + +ZMATH_DEPS= \ + components/zebase/$(OUTSUFX)/zebase.compiled + +ZOBJINST_DEPS= \ + components/zscript/$(OUTSUFX)/zscript.compiled \ + components/zcontrols/$(OUTSUFX)/zcontrols.compiled \ + components/zundostack/$(OUTSUFX)/zundostack.compiled + +ZSCRIPT_DEPS= \ + components/zscriptbase/$(OUTSUFX)/zscriptbase.compiled + +ZSCRIPTBASE_DEPS= \ + components/zcontainers/$(OUTSUFX)/zcontainers.compiled + +../$(OUTSUFX)/zcad.compiled: $(ZCAD_DEPS) + $(ZEALOUS_BUILD) zcad.lpi + +other/AGraphLaz/lazarus/$(OUTSUFX)/ag_graph.compiled: $(AG_GRAPH_DEPS) + $(ZEALOUS_BUILD) other/AGraphLaz/lazarus/ag_graph.lpk + +other/AGraphLaz/lazarus/$(OUTSUFX)/ag_vectors.compiled: + $(ZEALOUS_BUILD) other/AGraphLaz/lazarus/ag_vectors.lpk + +other/AGraphLaz/lazarus/$(OUTSUFX)/ag_attr.compiled: + $(ZEALOUS_BUILD) other/AGraphLaz/lazarus/ag_attr.lpk + +other/AGraphLaz/lazarus/$(OUTSUFX)/ag_math.compiled: + $(ZEALOUS_BUILD) other/AGraphLaz/lazarus/ag_math.lpk + +other/VirtualTreeView-Lazarus/Source/$(OUTSUFX)-$(GUI)/virtualtreeview_package.compiled: $(VTV_DEPS) + $(ZEALOUS_BUILD) other/VirtualTreeView-Lazarus/Source/virtualtreeview_package.lpk + +other/lclextensions/$(OUTSUFX)-$(GUI)/lclextensions_package.compiled: + $(ZEALOUS_BUILD) other/lclextensions/lclextensions_package.lpk + +components/zmath/$(OUTSUFX)/zmath.compiled: $(ZMATH_DEPS) + $(ZEALOUS_BUILD) components/zmath/zmath.lpk + +components/zebase/$(OUTSUFX)/zebase.compiled: + $(ZEALOUS_BUILD) components/zebase/zebase.lpk + +components/zobjectinspector/$(OUTSUFX)/zobjectinspector.compiled: $(ZOBJINST_DEPS) + $(ZEALOUS_BUILD) components/zobjectinspector/zobjectinspector.lpk + +components/zscript/$(OUTSUFX)/zscript.compiled: $(ZSCRIPT_DEPS) + $(ZEALOUS_BUILD) components/zscript/zscript.lpk + +components/zscriptbase/$(OUTSUFX)/zscriptbase.compiled: $(ZSCRIPTBASE_DEPS) + $(ZEALOUS_BUILD) components/zscriptbase/zscriptbase.lpk + +components/zcontainers/$(OUTSUFX)/zcontainers.compiled: $(ZMATH_DEPS) + $(ZEALOUS_BUILD) components/zcontainers/zcontainers.lpk + +components/zcontrols/$(OUTSUFX)/zcontrols.compiled: + $(ZEALOUS_BUILD) components/zcontrols/zcontrols.lpk + +components/zundostack/$(OUTSUFX)/zundostack.compiled: $(ZSCRIPT_DEPS) + $(ZEALOUS_BUILD) components/zundostack/zundostack.lpk Added: head/cad/zcad/files/patch-cad__source_components_zebase_uzbpaths.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_components_zebase_uzbpaths.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,53 @@ +--- cad_source/components/zebase/uzbpaths.pas.orig 2017-05-01 09:50:10 UTC ++++ cad_source/components/zebase/uzbpaths.pas +@@ -19,7 +19,8 @@ + unit uzbpaths; + {$INCLUDE def.inc} + interface +-uses uzbtypes,Masks,LCLProc,uzbtypesbase,{$IFNDEF DELPHI}LazUTF8,{$ENDIF}sysutils; ++uses uzbtypes,Masks,LCLProc,uzbtypesbase,{$IFNDEF DELPHI}LazUTF8,{$ENDIF} ++{$IFDEF UNIX}baseunix,{$ENDIF}sysutils; + type + TFromDirIterator=procedure (filename:GDBString); + TFromDirIteratorObj=procedure (filename:GDBString) of object; +@@ -35,7 +36,7 @@ function GetPartOfPath(out part:GDBStrin + + procedure FromDirIterator(const path,mask,firstloadfilename:GDBSTring;proc:TFromDirIterator;method:TFromDirIteratorObj); + procedure FromDirsIterator(const path,mask,firstloadfilename:GDBString;proc:TFromDirIterator;method:TFromDirIteratorObj); +-var ProgramPath,SupportPath,TempPath:gdbstring; ++var ProgramPath,SupportPath,TempPath,UserPath:gdbstring; + implementation + //uses log; + function FindInPaths(Paths,FileName:GDBString):GDBString; +@@ -147,11 +148,19 @@ begin + DebugLn(sysutils.Format('[FILEOPS]FindInSupportPath: file not found:"%s"',[{$IFNDEF DELPHI}utf8tosys{$ENDIF}(FileName)])); + end; + function ExpandPath(path:GDBString):GDBString; ++{$IFDEF UNIX}var sb:stat;{$ENDIF} + begin + if path='' then + result:=programpath + else if path[1]='*' then +- result:=programpath+copy(path,2,length(path)-1) ++begin ++{$IFDEF UNIX} ++ result:=UserPath+copy(path,2,length(path)-1); ++ if ((fpstat(result,sb) = 0) and fpS_ISDIR(sb.st_mode)) ++ or not FileExists(result) then ++{$ENDIF} ++ result:=programpath+copy(path,2,length(path)-1); ++end + else result:=path; + result:=StringReplace(result,'/', PathDelim,[rfReplaceAll, rfIgnoreCase]); + if DirectoryExists({$IFNDEF DELPHI}utf8tosys{$ENDIF}(result)) then +@@ -242,4 +251,10 @@ initialization + if (TempPath[length(TempPath)]<>PathDelim) + then + TempPath:=TempPath+PathDelim; ++{$IFDEF UNIX} ++ UserPath:=GetUserDir+'.zcad/'; ++ ForceDirectories(UserPath+'autosave'); ++ ForceDirectories(UserPath+'components'); ++ ForceDirectories(UserPath+'rtl'); ++{$ENDIF} + end. Added: head/cad/zcad/files/patch-cad__source_other_AGraphLaz_Vectors_ExtSys.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_other_AGraphLaz_Vectors_ExtSys.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,47 @@ +--- cad_source/other/AGraphLaz/Vectors/ExtSys.pas.orig 2017-05-01 09:49:55 UTC ++++ cad_source/other/AGraphLaz/Vectors/ExtSys.pas +@@ -10,7 +10,7 @@ interface + + uses + {$IFDEF V_WIN32}{$ENDIF} +- {$IFDEF LINUX}{$IFDEF V_DELPHI}Libc{$ELSE}Linux{,cmem}{$ENDIF},{$ENDIF} ++ {$IFDEF FREEBSD}{$IFDEF V_DELPHI}Libc{$ELSE}unixtype,sysctl{,cmem}{$ENDIF},{$ENDIF} + SysUtils, {$IFDEF V_D4}SysConst, {$ENDIF}ExtType, VectErr{$IFNDEF LINUX}, Windows{$ENDIF}; + + const +@@ -574,12 +574,13 @@ begin + end; + Result:=MemSize; + {$ELSE} +-{$IFDEF LINUX} ++{$IFDEF FREEBSD} + var +- SI: TSysInfo; ++ page_count, pagesize : UInt32; ++ len : size_t = sizeof(UInt32); + begin +- if sysinfo(@SI){IFDEF V_DELPHI} = 0{ENDIF} then +- Result:=SI.totalram ++ if (FPsysctlbyname('hw.pagesize', @pagesize, @len, nil, 0) {IFDEF V_DELPHI} = 0{ENDIF}) and (FPsysctlbyname('vm.stats.vm.v_page_count', @page_count, @len, nil, 0){IFDEF V_DELPHI} = 0{ENDIF}) then ++ Result:=page_count*pagesize + else + Result:=0; + {$ELSE} +@@ -598,12 +599,13 @@ begin + GlobalMemoryStatus({$IFDEF V_FREEPASCAL}@{$ENDIF}MemoryStatus); + Result:=MemoryStatus.dwAvailPhys; + {$ELSE} +-{$IFDEF LINUX} ++{$IFDEF FREEBSD} + var +- SI: TSysInfo; ++ free_count, pagesize : UInt32; ++ len : size_t = sizeof(UInt32); + begin +- if sysinfo(@SI){IFDEF V_DELPHI} = 0{ENDIF} then +- Result:=SI.freeram ++ if (FPsysctlbyname('hw.pagesize', @pagesize, @len, nil, 0) {IFDEF V_DELPHI} = 0{ENDIF}) and (FPsysctlbyname('vm.stats.vm.v_free_count', @free_count, @len, nil, 0){IFDEF V_DELPHI} = 0{ENDIF}) then ++ Result:=free_count*pagesize + else + Result:=0; + {$ELSE} Added: head/cad/zcad/files/patch-cad__source_zcad.lpi ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_zcad.lpi Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,11 @@ +--- cad_source/zcad.lpi.orig 2017-05-01 09:50:07 UTC ++++ cad_source/zcad.lpi +@@ -220,7 +220,7 @@ + <PackageName Value="AnchorDocking"/> + </Item15> + <Item16> +- <PackageName Value="LazOpenGLContext"/> ++ <Filename Value="openglcontext.pas"/> + </Item16> + <Item17> + <PackageName Value="LCL"/> Added: head/cad/zcad/files/patch-cad__source_zcad_commands_uzccombase.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_zcad_commands_uzccombase.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,17 @@ +--- cad_source/zcad/commands/uzccombase.pas.orig 2017-05-01 09:49:51 UTC ++++ cad_source/zcad/commands/uzccombase.pas +@@ -332,7 +332,14 @@ begin + itautoseve:=false; + if operands='QS' then + begin ++{$IFDEF UNIX} ++ // On Unix, force saving under ~/.zcad/autosave ++ s1:=sysvar.SAVE.SAVE_Auto_FileName^; ++ if s1[1]='*' then ++ s1:=UserPath+copy(s1,2,length(s1)-1); ++{$ELSE} + s1:=ExpandPath(sysvar.SAVE.SAVE_Auto_FileName^); ++{$ENDIF} + s:=rsAutoSave+': '''+s1+''''; + HistoryOutStr(s); + itautoseve:=true; Added: head/cad/zcad/files/patch-cad__source_zcad_commands_uzccominterface.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_zcad_commands_uzccominterface.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,20 @@ +--- cad_source/zcad/commands/uzccominterface.pas.orig 2017-05-01 09:49:51 UTC ++++ cad_source/zcad/commands/uzccominterface.pas +@@ -477,7 +477,7 @@ var + begin + try + // create a new xml config file +- filename:=utf8tosys(ProgramPath+'components/defaultlayout.xml'); ++ filename:=utf8tosys(UserPath+'components/defaultlayout.xml'); + SaveLayoutToFile(filename); + exit; + XMLConfig:=TXMLConfigStorage.Create(filename,false); +@@ -702,7 +702,7 @@ var + begin + mem.init({$IFDEF DEBUGBUILD}'{A1891083-67C6-4C21-8012-6D215935F6A6}',{$ENDIF}1024); + SysVarUnit^.SavePasToMem(mem); +- mem.SaveToFile(expandpath(ProgramPath+'rtl/sysvar.pas')); ++ mem.SaveToFile(expandpath(UserPath+'rtl/sysvar.pas')); + mem.done; + result:=cmd_ok; + end; Added: head/cad/zcad/files/patch-cad__source_zcad_gui_uzcmainwindow.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_zcad_gui_uzcmainwindow.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,11 @@ +--- cad_source/zcad/gui/uzcmainwindow.pas.orig 2017-05-01 09:49:49 UTC ++++ cad_source/zcad/gui/uzcmainwindow.pas +@@ -693,7 +693,7 @@ begin + + mem.init({$IFDEF DEBUGBUILD}'{71D987B4-8C57-4C62-8C12-CFC24A0A9C9A}',{$ENDIF}1024); + SavedUnit^.SavePasToMem(mem); +- mem.SaveToFile(expandpath(ProgramPath+'rtl'+PathDelim+'savedvar.pas')); ++ mem.SaveToFile(expandpath(UserPath+'rtl'+PathDelim+'savedvar.pas')); + mem.done; + end; + Added: head/cad/zcad/files/patch-cad__source_zcad_uzclog.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_zcad_uzclog.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,37 @@ +--- cad_source/zcad/uzclog.pas.orig 2017-05-01 09:49:46 UTC ++++ cad_source/zcad/uzclog.pas +@@ -21,10 +21,11 @@ unit uzclog; + {$mode objfpc}{$H+} + interface + uses UGDBOpenArrayOfByte,gzctnrvectordata,gzctnrstl,LazLoggerBase, ++ {$IFDEF UNIX}uzbpaths,{$ENDIF} + LazLogger,strutils,sysutils{$IFNDEF DELPHI},LazUTF8{$ENDIF}; + const {$IFDEF DELPHI}filelog='log/zcad_delphi.log';{$ENDIF} + {$IFDEF FPC} +- {$IFDEF LINUX}filelog='log/zcad_linux.log';{$ENDIF} ++ {$IFDEF UNIX}filelog='zcad_unix.log';{$ENDIF} + {$IFDEF WINDOWS}filelog='log/zcad_windows.log';{$ENDIF} + {$ENDIF} + lp_IncPos=1; +@@ -131,7 +132,9 @@ var + begin + if assigned(SplashTextOut) then + SplashTextOut(s,true); +- logname:={$IFNDEF DELPHI}SysToUTF8{$ENDIF}(ExtractFilePath(paramstr(0)))+filelog+'hard'; ++ logname:={$IFNDEF DELPHI}SysToUTF8{$ENDIF} ++ ({$IFDEF UNIX}UserPath{$ELSE}ExtractFilePath(paramstr(0)){$ENDIF}) ++ +filelog+'hard'; + FileHandle:=0; + if not fileexists({$IFNDEF DELPHI}UTF8ToSys{$ENDIF}(logname)) then + FileHandle:=FileCreate({$IFNDEF DELPHI}UTF8ToSys{$ENDIF}(logname)) +@@ -496,7 +499,9 @@ begin + end; + initialization + begin +- programlog.init({$IFNDEF DELPHI}SysToUTF8{$ENDIF}(ExtractFilePath(paramstr(0)))+filelog,LM_Error); ++ programlog.init({$IFNDEF DELPHI}SysToUTF8{$ENDIF} ++ ({$IFDEF UNIX}UserPath{$ELSE}ExtractFilePath(paramstr(0)){$ENDIF}) ++ +filelog,LM_Error); + end; + finalization + programlog.done; Added: head/cad/zcad/files/patch-cad__source_zcad_uzcsysinfo.pas ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/files/patch-cad__source_zcad_uzcsysinfo.pas Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,10 @@ +--- cad_source/zcad/uzcsysinfo.pas.orig 2017-05-01 09:49:45 UTC ++++ cad_source/zcad/uzcsysinfo.pas +@@ -196,6 +196,7 @@ begin + debugln('{N}SysParam.ProgramPath="%s"',[ProgramPath]); + //programlog.LogOutStr(format('SysParam.ProgramPath="%s"',[ProgramPath]),lp_OldPos,LM_Necessarily); + debugln('{N}SysParam.TempPath="%s"',[TempPath]); ++ debugln('{N}SysParam.UserPath="%s"',[UserPath]); + //programlog.LogOutStr(format('SysParam.TempPath="%s"',[TempPath]),lp_OldPos,LM_Necessarily); + debugln('{N}SysParam.ScreenX=%d',[SysParam.ScreenX]); + //programlog.LogOutStr(format('SysParam.ScreenX=%d',[SysParam.ScreenX]),lp_OldPos,LM_Necessarily); Added: head/cad/zcad/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/pkg-descr Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,4 @@ +ZCAD is simple CAD program with AutoCAD DXF 2000 file format support. +It is developed with Free Pascal and Lazarus. + +https://sourceforge.net/projects/zcad/ Added: head/cad/zcad/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/zcad/pkg-plist Tue May 2 18:50:35 2017 (r439964) @@ -0,0 +1,326 @@ +zcad/blocks/el/general/DEVICE_CABLE_MARK.pas +zcad/blocks/el/general/DEVICE_CONNECTOR.pas +zcad/blocks/el/general/DEVICE_CONNECTOR_POINT.pas +zcad/blocks/el/general/DEVICE_CONNECTOR_SQUARE.pas +zcad/blocks/el/general/DEVICE_CONNECTOR_TERMINAL.pas +zcad/blocks/el/general/DEVICE_EL_CABLE_BREAK.pas +zcad/blocks/el/general/DEVICE_EL_CABLE_DOWN.pas +zcad/blocks/el/general/DEVICE_EL_CABLE_FROMDOWN.pas +zcad/blocks/el/general/DEVICE_EL_CABLE_FROMUP.pas +zcad/blocks/el/general/DEVICE_EL_CABLE_UP.pas +zcad/blocks/el/general/DEVICE_EL_CONTACTOR.pas +zcad/blocks/el/general/DEVICE_EL_LIGHT_FBULB.pas +zcad/blocks/el/general/DEVICE_EL_LIGHT_LBULB.pas +zcad/blocks/el/general/DEVICE_EL_LIGHT_SWITH.pas +zcad/blocks/el/general/DEVICE_EL_MOTOR.pas +zcad/blocks/el/general/DEVICE_EL_SHU.pas +zcad/blocks/el/general/DEVICE_EL_SHUV.pas +zcad/blocks/el/general/DEVICE_EL_SR.pas +zcad/blocks/el/general/DEVICE_EL_YARV.pas +zcad/blocks/el/general/DEVICE_KIP_ACTUATOR.pas +zcad/blocks/el/general/DEVICE_KIP_AUTOMATION_BOX.pas +zcad/blocks/el/general/DEVICE_KIP_CONNECTION_BOX.pas +zcad/blocks/el/general/DEVICE_KIP_DETECTOR.pas +zcad/blocks/el/general/DEVICE_KIP_DEVICE.pas +zcad/blocks/el/general/DEVICE_KIP_KDU.pas +zcad/blocks/el/general/DEVICE_KIP_KNOPKA.pas +zcad/blocks/el/general/DEVICE_KIP_KNOPKA_PKE.pas +zcad/blocks/el/general/DEVICE_KIP_KOROBKA.pas +zcad/blocks/el/general/DEVICE_KIP_KPV.pas +zcad/blocks/el/general/DEVICE_KIP_OZK.pas +zcad/blocks/el/general/DEVICE_KIP_SENSOR.pas +zcad/blocks/el/general/DEVICE_KIP_SOLENOID.pas +zcad/blocks/el/general/DEVICE_KIP_SPZH.pas +zcad/blocks/el/general/DEVICE_KIP_UKP.pas +zcad/blocks/el/general/DEVICE_KIP_VALVE.pas +zcad/blocks/el/general/DEVICE_OPS_AHL.pas +zcad/blocks/el/general/DEVICE_OPS_DISTRIBUTION_BOX.pas +zcad/blocks/el/general/DEVICE_OPS_GB2.pas +zcad/blocks/el/general/DEVICE_OPS_PKU.pas +zcad/blocks/el/general/DEVICE_OPS_SHPS.pas +zcad/blocks/el/general/DEVICE_OPS_UZ.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGB.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGL.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGL2.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGLI.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGLR.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGOI.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGOR.pas +zcad/blocks/el/general/DEVICE_OS_DAT_BGT.pas +zcad/blocks/el/general/DEVICE_OS_ELLOCK.pas +zcad/blocks/el/general/DEVICE_OS_KNOPKA.pas +zcad/blocks/el/general/DEVICE_OS_READER.pas +zcad/blocks/el/general/DEVICE_PS_AR1.pas +zcad/blocks/el/general/DEVICE_PS_AR2.pas +zcad/blocks/el/general/DEVICE_PS_AR8.pas +zcad/blocks/el/general/DEVICE_PS_ARK_DEVICE.pas +zcad/blocks/el/general/DEVICE_PS_BIAD_RUPOR.pas +zcad/blocks/el/general/DEVICE_PS_BIAL.pas +zcad/blocks/el/general/DEVICE_PS_BIAS.pas +zcad/blocks/el/general/DEVICE_PS_BIASL.pas +zcad/blocks/el/general/DEVICE_PS_BRIZ.pas +zcad/blocks/el/general/DEVICE_PS_DAT_HAND.pas +zcad/blocks/el/general/DEVICE_PS_DAT_SMOKE.pas +zcad/blocks/el/general/DEVICE_PS_DAT_SMOKE_AVTON.pas +zcad/blocks/el/general/DEVICE_PS_DAT_SMOKE_FALSH.pas +zcad/blocks/el/general/DEVICE_PS_DAT_SMOKE_FALSH2.pas +zcad/blocks/el/general/DEVICE_PS_DAT_TERMO.pas +zcad/blocks/el/general/DEVICE_PS_ET.pas +zcad/blocks/el/general/DEVICE_PS_GB.pas +zcad/blocks/el/general/DEVICE_PS_KOROBKA.pas +zcad/blocks/el/general/DEVICE_PS_KPB.pas +zcad/blocks/el/general/DEVICE_PS_SP1.pas +zcad/blocks/el/general/DEVICE_PS_TABLO_ARROW.pas +zcad/blocks/el/general/DEVICE_PS_TABLO_EXIT.pas +zcad/blocks/el/general/DEVICE_PS_TABLO_EXIT_RESERVE.pas +zcad/blocks/el/general/DEVICE_PS_TABLO_PNVHODI.pas +zcad/blocks/el/general/DEVICE_PS_TABLO_PUHODI.pas +zcad/blocks/el/general/DEVICE_PS_UKVK.pas +zcad/blocks/el/general/DEVICE_PS_VUOS.pas +zcad/blocks/el/general/DEVICE_SPDS_AXIS.pas +zcad/blocks/el/general/DEVICE_SS_19.pas +zcad/blocks/el/general/DEVICE_SS_ATS.pas +zcad/blocks/el/general/DEVICE_SS_BIAS.pas +zcad/blocks/el/general/DEVICE_SS_MIC.pas +zcad/blocks/el/general/DEVICE_SS_PRICLOCK.pas +zcad/blocks/el/general/DEVICE_SS_RJSOCKET.pas +zcad/blocks/el/general/DEVICE_SS_RT.pas +zcad/blocks/el/general/DEVICE_SS_SECCLOCK.pas +zcad/blocks/el/general/DEVICE_SS_VCAM.pas +zcad/blocks/el/general/DEVICE_SS_VCAMTC.pas +zcad/blocks/el/general/_KIP.dxf +zcad/blocks/el/general/_OPS.dxf +zcad/blocks/el/general/_connector.dxf +zcad/blocks/el/general/_el.dxf +zcad/blocks/el/general/_nok.dxf +zcad/blocks/el/general/_spds.dxf +zcad/blocks/el/general/_ss.dxf +zcad/blocks/el/general/zcadblocks.lst +zcad/blocks/ops/PS_DAT_SMOKE.dxf +zcad/blocks/ops/PS_DAT_TERMO.dxf +zcad/components/22inch_1680x1050.xml +zcad/components/_sys.dxf +zcad/components/autorun.cmd +zcad/components/defaultlayout.xml +zcad/components/defaultlayoutbackup.xml +zcad/components/empty.dxf +zcad/components/klayout.xml +zcad/components/logo.png +zcad/components/main.sf +zcad/components/palette.rgb +zcad/components/undocked.xml +zcad/components/vdock.xml +zcad/components/zcad.lin +zcad/fonts/GEWIND.SHX +zcad/fonts/OpenGostTypeA-Regular.ttf +zcad/fonts/OpenGostTypeB-Regular.ttf +zcad/fonts/_mipGost.shx +zcad/fonts/ltypeshp.shx +zcad/images/basket.png +zcad/images/bug.png +zcad/images/dxf.png +zcad/images/freze.png +zcad/images/lock.png +zcad/images/minus.png +zcad/images/navgroup.png +zcad/images/navigator.ima +zcad/images/off.png +zcad/images/ok.png +zcad/images/on.png +zcad/images/ondiagram.png +zcad/images/onplan.png +zcad/images/plus.png +zcad/images/print.png +zcad/images/purge.png +zcad/images/refresh.png +zcad/images/unfreze.png +zcad/images/unlock.png +zcad/images/unprint.png +zcad/languages/anchordockstr.ru.po +zcad/languages/lclstrconsts.ru.po +zcad/languages/zcad.po +zcad/languages/zcad.ru.po +zcad/menu/BMP/1.bmp +zcad/menu/BMP/El_Wire.bmp +zcad/menu/BMP/about.bmp +zcad/menu/BMP/addtoowner.bmp +zcad/menu/BMP/arc.bmp +zcad/menu/BMP/array.bmp +zcad/menu/BMP/autocable.bmp +zcad/menu/BMP/bedit.bmp +zcad/menu/BMP/bottom.bmp +zcad/menu/BMP/circle.bmp +zcad/menu/BMP/circle2p.bmp +zcad/menu/BMP/circle3p.bmp +zcad/menu/BMP/circlecd.bmp +zcad/menu/BMP/close.bmp +zcad/menu/BMP/colors.bmp +zcad/menu/BMP/copy.bmp +zcad/menu/BMP/copyclip.bmp +zcad/menu/BMP/copyclipbase.bmp +zcad/menu/BMP/cutclip.bmp +zcad/menu/BMP/dimaligned.bmp +zcad/menu/BMP/dimdiametric.bmp +zcad/menu/BMP/dimlinear.bmp +zcad/menu/BMP/dimradial.bmp +zcad/menu/BMP/dimstyles.bmp +zcad/menu/BMP/dist.bmp +zcad/menu/BMP/el_cable.bmp +zcad/menu/BMP/el_leader.bmp +zcad/menu/BMP/erase.bmp +zcad/menu/BMP/exit.bmp +zcad/menu/BMP/find.bmp +zcad/menu/BMP/help.bmp +zcad/menu/BMP/insert.bmp +zcad/menu/BMP/isone.bmp +zcad/menu/BMP/isonw.bmp +zcad/menu/BMP/isose.bmp +zcad/menu/BMP/isosw.bmp +zcad/menu/BMP/layer.bmp +zcad/menu/BMP/left.bmp +zcad/menu/BMP/line.bmp +zcad/menu/BMP/linestyles.bmp +zcad/menu/BMP/load.bmp +zcad/menu/BMP/lwt.bmp +zcad/menu/BMP/magnet.bmp +zcad/menu/BMP/main.png +zcad/menu/BMP/matchprop.bmp +zcad/menu/BMP/mirror.bmp +zcad/menu/BMP/move.bmp +zcad/menu/BMP/mvarman.bmp +zcad/menu/BMP/new.bmp +zcad/menu/BMP/noimage.bmp +zcad/menu/BMP/one.bmp +zcad/menu/BMP/options.bmp +zcad/menu/BMP/osnap.bmp +zcad/menu/BMP/pandown.bmp +zcad/menu/BMP/panleft.bmp +zcad/menu/BMP/panright.bmp +zcad/menu/BMP/panup.bmp +zcad/menu/BMP/pasteclip.bmp +zcad/menu/BMP/perspective.bmp +zcad/menu/BMP/pline.bmp +zcad/menu/BMP/polar.bmp +zcad/menu/BMP/polyed.bmp +zcad/menu/BMP/print.bmp +zcad/menu/BMP/ps.bmp +zcad/menu/BMP/rectangle.bmp +zcad/menu/BMP/redo.bmp +zcad/menu/BMP/regen.bmp +zcad/menu/BMP/removeautocable.bmp +zcad/menu/BMP/right.bmp +zcad/menu/BMP/rotate.bmp +zcad/menu/BMP/save.bmp +zcad/menu/BMP/saveas.bmp +zcad/menu/BMP/scale.bmp +zcad/menu/BMP/snaptoapparentintersection.bmp +zcad/menu/BMP/snaptocenter.bmp +zcad/menu/BMP/snaptoend.bmp +zcad/menu/BMP/snaptogrid.bmp +zcad/menu/BMP/snaptoinsert.bmp +zcad/menu/BMP/snaptointersection.bmp +zcad/menu/BMP/snaptomid.bmp +zcad/menu/BMP/snaptonearest.bmp +zcad/menu/BMP/snaptoparalel.bmp +zcad/menu/BMP/snaptoperpendicular.bmp +zcad/menu/BMP/snaptoquadrant.bmp +zcad/menu/BMP/snaptotangent.bmp +zcad/menu/BMP/spec.bmp +zcad/menu/BMP/sub.bmp +zcad/menu/BMP/superline.bmp +zcad/menu/BMP/text.bmp +zcad/menu/BMP/textstyles.bmp +zcad/menu/BMP/top.bmp +zcad/menu/BMP/treeview.bmp +zcad/menu/BMP/undo.bmp +zcad/menu/BMP/varman.bmp +zcad/menu/BMP/zoomall.bmp +zcad/menu/BMP/zoomin.bmp +zcad/menu/BMP/zoomout.bmp +zcad/menu/BMP/zoomwindow.bmp +zcad/menu/actions.acn +zcad/menu/default.cla +zcad/menu/electrotech.acn +zcad/menu/mainmenu.mn +zcad/programdb/_startup.pas +zcad/programdb/amk/ksspv.pas +zcad/programdb/argusspectr/оповещение/am.pas +zcad/programdb/argusspectr/оповещение/pu.pas +zcad/programdb/bastion/ибп/ibp.pas +zcad/programdb/bolid/ППКОП/ppkop.pas +zcad/programdb/bolid/ППКОП/pu.pas +zcad/programdb/danfoss/esm.pas +zcad/programdb/danfoss/kpi35.pas +zcad/programdb/irset/Шлейфовые извещатели/izv.pas +zcad/programdb/kamkabel/pvs.pas +zcad/programdb/kamkabel/svvp.pas +zcad/programdb/kazteplocontrol/tb.pas +zcad/programdb/manotom/mp3u.pas +zcad/programdb/owen/dts.pas +zcad/programdb/paritet/ksspv.pas +zcad/programdb/rele/rp21.pas +zcad/programdb/rubezh/Шлейфовые извещатели/C2000-4.pas +zcad/programdb/saranskcabel/1.pas +zcad/programdb/sevcabel/_EQ_SEVCABLEkvvg.csv +zcad/programdb/sevcabel/kvvg.pas +zcad/programdb/sevcabel/vvg.pas +zcad/programdb/sevcabel/vvgngafrls.pas +zcad/programdb/speccable/cable.pas +zcad/programdb/spkbtehno/cable.pas +zcad/programdb/ufimcabel/mks.pas +zcad/programdb/ООО Электротехника и Автоматика/op.pas +zcad/rtl/BlockCategory.cat +zcad/rtl/EqCategory.cat +zcad/rtl/cables.pas +zcad/rtl/connectors.pas +zcad/rtl/devicebase.pas +zcad/rtl/devices.pas +zcad/rtl/dwg/DrawingDeviceBase.pas +zcad/rtl/dwg/DrawingVars.pas +zcad/rtl/objcalc/opsmark.pas +zcad/rtl/objcalc/opsmarkdef.pas +zcad/rtl/objdefunits/cable.pas +zcad/rtl/objdefunits/elwire.pas +zcad/rtl/objdefunits/include/_addtocable.pas +zcad/rtl/objdefunits/include/_riser.pas +zcad/rtl/objdefunits/include/_riserlink.pas +zcad/rtl/objdefunits/include/_ss_socket.pas +zcad/rtl/objdefunits/include/bglsensor.pas +zcad/rtl/objdefunits/include/blocktype.pas +zcad/rtl/objdefunits/include/cablename.pas +zcad/rtl/objdefunits/include/connector.pas +zcad/rtl/objdefunits/include/firesensor.pas +zcad/rtl/objdefunits/include/objconnect.pas +zcad/rtl/objdefunits/include/objgroup.pas +zcad/rtl/objdefunits/include/objmaterial.pas +zcad/rtl/objdefunits/include/objname.pas +zcad/rtl/objdefunits/include/rip.pas +zcad/rtl/objdefunits/include/slcabagenmodul.pas +zcad/rtl/objdefunits/objroot.pas +zcad/rtl/objdefunits/superline.pas +zcad/rtl/objdefunits/trace.pas +zcad/rtl/savedvar.pas +zcad/rtl/styles/OPS_shleif.pas +zcad/rtl/styles/styles.pas +zcad/rtl/system.pas +zcad/rtl/sysvar.pas +zcad/rtl/sysvar_original.pas +zcad/sample/entities.dxf +zcad/sample/enttree/nonregular.dwg +zcad/sample/enttree/nonregular2.dwg +zcad/sample/enttree/regular.dwg +zcad/sample/test_dxf/3d_mount.dxf +zcad/sample/test_dxf/by_trace.csv +zcad/sample/test_dxf/by_trace.dxf +zcad/sample/test_dxf/by_trace.dxf.dbpas +zcad/sample/test_dxf/currenttest.dxf +zcad/sample/test_dxf/currenttest.dxf.dbpas +zcad/sample/test_dxf/em.dxf +zcad/sample/test_dxf/em.dxf.dbpas +zcad/sample/test_dxf/ops.dxf +zcad/sample/test_dxf/teapot.dxf +zcad/sample/test_dxf/test.dxf +zcad/sample/test_dxf/truetype.dxf +zcad/sample/zigzag.dxf +zcad/template/default.dxf +zcad/zcad
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201705021850.v42IoaBS007920>