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