On Sun, Jun 06, 2010 at 02:21:04AM +0300, Antti Harri wrote:
> >Fix build with gcc4.
> 
> Hello,
> 
> I would like to propose these things to be patched as well:
> 
> - Better license marker
> - Use of SUBST*
> - @bin for the PLIST
> - Fix the order of "recent files" menu

Looks fine, thanks. Merged diff (with an additional WANTLIB change)
below.

If anyone is using qcad and does not like the reversed `recent
files' menu, please speak up NOW.

> I must warn though, looks like those changes have
> been in my mystuff/ for two years, so they could use
> some double-checking to make sure they are up-to-date.

It compiles and it works (at least on my amd64), I don't see any
problem with it.

Ciao,
        Kili


Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/qcad/Makefile,v
retrieving revision 1.17
diff -u -p -r1.17 Makefile
--- Makefile    10 Aug 2009 06:30:30 -0000      1.17
+++ Makefile    6 Jun 2010 12:57:49 -0000
@@ -4,17 +4,17 @@ COMMENT=      Qt-based 2D CAD system
 
 V=             2.0.5.0
 DISTNAME=      qcad-${V}-1-community.src
-PKGNAME=       qcad-${V}p0
+PKGNAME=       qcad-${V}p1
 CATEGORIES=    cad graphics
 
 HOMEPAGE=      http://www.ribbonsoft.com/qcad.html
 
-# GPL
+# GPLv2
 PERMIT_PACKAGE_CDROM=  Yes
 PERMIT_PACKAGE_FTP=    Yes
 PERMIT_DISTFILES_CDROM=        Yes
 PERMIT_DISTFILES_FTP=  Yes
-WANTLIB=               X11 Xext c m pthread pthread-stubs stdc++ xcb
+WANTLIB=               X11 Xext c m pthread stdc++
 
 MASTER_SITES=  http://www.ribbonsoft.com/archives/qcad/
 
@@ -30,13 +30,12 @@ PORTHOME=   ${WRKDIR}
 MAKE_ENV+=     QTDIR=${MODQT_LIBDIR} \
                MAKE=${MAKE_PROGRAM}
 
+SUBST_VARS=    CXXFLAGS LOCALBASE MODQT_LIBDIR
+
 pre-configure:
-       @perl -pi -e 's,!!CXXFLAGS!!,${CXXFLAGS},' ${WRKSRC}/mkspecs/defs.pro
-       @perl -pi -e 's,!!DOCDIR!!,${PREFIX}/share/doc/qcad,' \
-               ${WRKSRC}/qcadlib/src/engine/rs_system.h
-       @perl -pi -e 's,!!LOCALBASE!!,${LOCALBASE},' \
-               ${WRKSRC}/qcadlib/src/engine/rs_system.cpp
-       @perl -pi -e 's,!!QTDIR!!,${MODQT_LIBDIR},' \
+       ${SUBST_CMD} ${WRKSRC}/mkspecs/defs.pro \
+               ${WRKSRC}/qcadlib/src/engine/rs_system.h \
+               ${WRKSRC}/qcadlib/src/engine/rs_system.cpp \
                ${WRKSRC}/qcad/src/qc_applicationwindow.cpp
 
 do-build:
Index: patches/patch-mkspecs_defs_pro
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-mkspecs_defs_pro,v
retrieving revision 1.1
diff -u -p -r1.1 patch-mkspecs_defs_pro
--- patches/patch-mkspecs_defs_pro      9 Jan 2007 16:30:37 -0000       1.1
+++ patches/patch-mkspecs_defs_pro      6 Jun 2010 12:57:49 -0000
@@ -1,12 +1,12 @@
 $OpenBSD: patch-mkspecs_defs_pro,v 1.1 2007/01/09 16:30:37 steven Exp $
 --- mkspecs/defs.pro.orig      Tue Nov 22 12:47:28 2005
-+++ mkspecs/defs.pro   Tue Jan  9 16:38:47 2007
++++ mkspecs/defs.pro   Sun Jun  6 14:39:58 2010
 @@ -1,6 +1,7 @@
  # $Id: patch-mkspecs_defs_pro,v 1.1 2007/01/09 16:30:37 steven Exp $
 -QMAKE_CXXFLAGS_DEBUG += -pedantic
 -QMAKE_CXXFLAGS += -pedantic
-+QMAKE_CXXFLAGS_DEBUG += !!CXXFLAGS!!
-+QMAKE_CXXFLAGS += !!CXXFLAGS!!
++QMAKE_CXXFLAGS_DEBUG += ${CXXFLAGS}
++QMAKE_CXXFLAGS += ${CXXFLAGS}
 +QMAKE_CXXFLAGS_RELEASE =
  
  win32 {
Index: patches/patch-qcad_src_qc_applicationwindow_cpp
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-qcad_src_qc_applicationwindow_cpp,v
retrieving revision 1.1
diff -u -p -r1.1 patch-qcad_src_qc_applicationwindow_cpp
--- patches/patch-qcad_src_qc_applicationwindow_cpp     9 Jan 2007 16:30:37 
-0000       1.1
+++ patches/patch-qcad_src_qc_applicationwindow_cpp     6 Jun 2010 12:57:49 
-0000
@@ -1,12 +1,24 @@
 $OpenBSD: patch-qcad_src_qc_applicationwindow_cpp,v 1.1 2007/01/09 16:30:37 
steven Exp $
---- qcad/src/qc_applicationwindow.cpp.orig     Sat Jan  6 16:31:24 2007
-+++ qcad/src/qc_applicationwindow.cpp  Sat Jan  6 16:54:10 2007
-@@ -2943,7 +2943,7 @@ void QC_ApplicationWindow::slotHelpManua
+--- qcad/src/qc_applicationwindow.cpp.orig     Tue Nov 22 12:49:33 2005
++++ qcad/src/qc_applicationwindow.cpp  Sun Jun  6 14:14:48 2010
+@@ -1581,9 +1581,9 @@ void QC_ApplicationWindow::updateRecentFilesMenu() {
+     RS_DEBUG->print("QC_ApplicationWindow::updateRecentFilesMenu()");
+ 
+     RS_DEBUG->print("Updating recent file menu...");
+-    for (int i=0; i<recentFiles->getNumber(); ++i) {
++    for (int i=recentFiles->getNumber(); i>=0; --i) {
+         QString label = QString( "&%1 %2" ).
+-                        arg(i+1).arg(recentFiles->get(i));
++                        
arg(recentFiles->getNumber()-i).arg(recentFiles->get(i));
+ 
+         if (fileMenu->findItem(i)) {
+             RS_DEBUG->print("Changeing item %d", i);
+@@ -2943,7 +2943,7 @@ void QC_ApplicationWindow::slotHelpManual() {
                          RS_SYSTEM->getAppDir().latin1());
          RS_DEBUG->print("QC_ApplicationWindow::slotHelpManual(): appdir: %s",
                          RS_SYSTEM->getAppDir().latin1());
 -        assistant = new QAssistantClient(RS_SYSTEM->getAppDir()+"/bin", this);
-+        assistant = new QAssistantClient("!!QTDIR!!/bin", this);
++        assistant = new QAssistantClient("${MODQT_LIBDIR}/bin", this);
                connect(assistant, SIGNAL(error(const QString&)), 
                        this, SLOT(slotError(const QString&)));
          QStringList args;
Index: patches/patch-qcadlib_src_engine_rs_entity_cpp
===================================================================
RCS file: patches/patch-qcadlib_src_engine_rs_entity_cpp
diff -N patches/patch-qcadlib_src_engine_rs_entity_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-qcadlib_src_engine_rs_entity_cpp      6 Jun 2010 12:57:49 
-0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- qcadlib/src/engine/rs_entity.cpp.orig      Tue Nov 22 12:52:32 2005
++++ qcadlib/src/engine/rs_entity.cpp   Sat Jun  5 19:00:52 2010
+@@ -861,7 +861,7 @@ std::ostream& operator << (std::ostream& os, RS_Entity
+         os << " layer: NULL ";
+     } else {
+         os << " layer: " << e.layer->getName().latin1() << " ";
+-        os << " layer address: " << (int)(e.layer) << " ";
++        os << " layer address: " << (long)(e.layer) << " ";
+     }
+ 
+     os << e.pen << "\n";
Index: patches/patch-qcadlib_src_engine_rs_layer_cpp
===================================================================
RCS file: patches/patch-qcadlib_src_engine_rs_layer_cpp
diff -N patches/patch-qcadlib_src_engine_rs_layer_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-qcadlib_src_engine_rs_layer_cpp       6 Jun 2010 12:57:49 
-0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- qcadlib/src/engine/rs_layer.cpp.orig       Tue Nov 22 12:52:38 2005
++++ qcadlib/src/engine/rs_layer.cpp    Sat Jun  5 19:10:20 2010
+@@ -55,7 +55,7 @@ std::ostream& operator << (std::ostream& os, const RS_
+     os << " name: " << l.getName().latin1()
+     << " pen: " << l.getPen()
+       << " frozen: " << (int)l.isFrozen()
+-      << " address: " << (int)(&l)
++      << " address: " << (long)(&l)
+     << std::endl;
+     return os;
+ }
Index: patches/patch-qcadlib_src_engine_rs_system_cpp
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-qcadlib_src_engine_rs_system_cpp,v
retrieving revision 1.1
diff -u -p -r1.1 patch-qcadlib_src_engine_rs_system_cpp
--- patches/patch-qcadlib_src_engine_rs_system_cpp      9 Jan 2007 16:30:38 
-0000       1.1
+++ patches/patch-qcadlib_src_engine_rs_system_cpp      6 Jun 2010 12:57:49 
-0000
@@ -1,14 +1,14 @@
 $OpenBSD: patch-qcadlib_src_engine_rs_system_cpp,v 1.1 2007/01/09 16:30:38 
steven Exp $
---- qcadlib/src/engine/rs_system.cpp.orig      Sat Jan  6 17:11:57 2007
-+++ qcadlib/src/engine/rs_system.cpp   Sat Jan  6 17:13:05 2007
-@@ -270,15 +270,9 @@ RS_StringList RS_System::getFileList(con
+--- qcadlib/src/engine/rs_system.cpp.orig      Tue Nov 22 12:52:36 2005
++++ qcadlib/src/engine/rs_system.cpp   Sun Jun  6 14:14:48 2010
+@@ -270,15 +270,9 @@ RS_StringList RS_System::getFileList(const RS_String& 
  
      /*RS_StringList dirList;
  
 -    // Redhat style:
 -    dirList.append("/usr/share/" + appDirName);
 +    // OpenBSD style:
-+    dirList.append("!!LOCALBASE!!/share/" + appDirName);
++    dirList.append("${LOCALBASE}/share/" + appDirName);
  
 -    // SuSE style:
 -    dirList.append("/usr/X11R6/" + appDirName);
@@ -19,7 +19,7 @@ $OpenBSD: patch-qcadlib_src_engine_rs_sy
      // Local directory:
      dirList.append(".");
      //dirList.append(getCurrentDir());
-@@ -333,13 +327,8 @@ RS_StringList RS_System::getDirectoryLis
+@@ -333,13 +327,8 @@ RS_StringList RS_System::getDirectoryList(const RS_Str
              dirList.append(appDir + "/" + subDirectory);
          }
  
@@ -31,7 +31,7 @@ $OpenBSD: patch-qcadlib_src_engine_rs_sy
 -
 -        dirList.append("/usr/X11R6/share/" + appDirName + "/" + subDirectory);
 +        // OpenBSD style:
-+        dirList.append("!!LOCALBASE!!/share/" + appDirName + "/" + 
subDirectory);
++        dirList.append("${LOCALBASE}/share/" + appDirName + "/" + 
subDirectory);
          dirList.append(getHomeDir() + "/." + appDirName + "/" + subDirectory);
  
  #ifdef __APPLE__
Index: patches/patch-qcadlib_src_engine_rs_system_h
===================================================================
RCS file: /cvs/ports/cad/qcad/patches/patch-qcadlib_src_engine_rs_system_h,v
retrieving revision 1.1
diff -u -p -r1.1 patch-qcadlib_src_engine_rs_system_h
--- patches/patch-qcadlib_src_engine_rs_system_h        9 Jan 2007 16:30:38 
-0000       1.1
+++ patches/patch-qcadlib_src_engine_rs_system_h        6 Jun 2010 12:57:49 
-0000
@@ -1,13 +1,13 @@
 $OpenBSD: patch-qcadlib_src_engine_rs_system_h,v 1.1 2007/01/09 16:30:38 
steven Exp $
 --- qcadlib/src/engine/rs_system.h.orig        Tue Nov 22 12:52:38 2005
-+++ qcadlib/src/engine/rs_system.h     Sat Jan  6 19:49:01 2007
-@@ -125,8 +125,7 @@ public:
++++ qcadlib/src/engine/rs_system.h     Sun Jun  6 14:14:48 2010
+@@ -125,8 +125,7 @@ class RS_System { (public)
       * @return Absolute path to the documentation.
       */
      RS_String getDocPath() {
 -        RS_StringList lst = getDirectoryList("doc");
 -              return lst.first();
-+              return "!!DOCDIR!!";
++              return "${LOCALBASE}/share/doc/qcad";
      }
  
        /**
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/cad/qcad/pkg/PLIST,v
retrieving revision 1.5
diff -u -p -r1.5 PLIST
--- pkg/PLIST   9 Jan 2007 16:30:38 -0000       1.5
+++ pkg/PLIST   6 Jun 2010 12:57:49 -0000
@@ -1,5 +1,5 @@
 @comment $OpenBSD: PLIST,v 1.5 2007/01/09 16:30:38 steven Exp $
-bin/qcad
+...@bin bin/qcad
 share/doc/qcad/
 share/doc/qcad/appendix.html
 share/doc/qcad/appendix_bib.html

Reply via email to