ports/184828: x11/xorg-edit: Fix build with clang
KATO Tsuguru
tkato432 at yahoo.com
Mon Dec 16 18:10:07 UTC 2013
>Number: 184828
>Category: ports
>Synopsis: x11/xorg-edit: Fix build with clang
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Mon Dec 16 18:10:07 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: KATO Tsuguru
>Release: FreeBSD 8.4-RELEASE-p4 i386
>Organization:
>Environment:
>Description:
- Fix build with clang
New file:
files/patch-xorgedit__guiframe.cpp
>How-To-Repeat:
>Fix:
diff -urN /usr/ports/x11/xorg-edit/Makefile x11/xorg-edit/Makefile
--- /usr/ports/x11/xorg-edit/Makefile 2013-11-19 02:05:36.000000000 +0900
+++ x11/xorg-edit/Makefile 2013-12-17 00:00:00.000000000 +0900
@@ -15,10 +15,10 @@
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
USE_BZIP2= yes
+USES= dos2unix gmake
DOS2UNIX_GLOB= *.cpp *.h
USE_WX= 2.6+
WX_UNICODE= yes
-USES= dos2unix gmake
PLIST_FILES= bin/xorg-edit \
lib/xorg-edit/de_DE/LC_MESSAGES/xorg-edit.mo \
@@ -34,7 +34,6 @@
DESKTOP_ENTRIES="Xorg Edit" "" "" "${PORTNAME}" "Settings;" true
-NO_STAGE= yes
post-patch:
@${REINPLACE_CMD} -e \
's|^CXX =|CXX ?=| ; \
@@ -58,15 +57,15 @@
@${ECHO_CMD} ' $$(MAKE) -C xorgedit' >> ${WRKSRC}/Makefile
do-install:
- (cd ${WRKDIR} && ${INSTALL_SCRIPT} xorg-edit ${PREFIX}/bin)
- @${MKDIR} ${PREFIX}/lib/xorg-edit
+ (cd ${WRKDIR} && ${INSTALL_SCRIPT} xorg-edit ${STAGEDIR}${PREFIX}/bin)
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/xorg-edit
(cd ${WRKSRC} && ${INSTALL_PROGRAM} xorg-edit \
- ${PREFIX}/lib/xorg-edit)
- @${MKDIR} ${PREFIX}/lib/xorg-edit/de_DE/LC_MESSAGES
+ ${STAGEDIR}${PREFIX}/lib/xorg-edit)
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/xorg-edit/de_DE/LC_MESSAGES
(cd ${WRKSRC}/de_DE/LC_MESSAGES && ${INSTALL_DATA} ${PORTNAME}.mo \
- ${PREFIX}/lib/xorg-edit/de_DE/LC_MESSAGES)
- @${MKDIR} ${PREFIX}/lib/xorg-edit/options/devices
+ ${STAGEDIR}${PREFIX}/lib/xorg-edit/de_DE/LC_MESSAGES)
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/xorg-edit/options/devices
(cd ${WRKSRC}/options/devices && ${INSTALL_DATA} *.xml \
- ${PREFIX}/lib/xorg-edit/options/devices)
+ ${STAGEDIR}${PREFIX}/lib/xorg-edit/options/devices)
.include <bsd.port.mk>
diff -urN /usr/ports/x11/xorg-edit/files/patch-xorgedit__guiframe.cpp x11/xorg-edit/files/patch-xorgedit__guiframe.cpp
--- /usr/ports/x11/xorg-edit/files/patch-xorgedit__guiframe.cpp 1970-01-01 09:00:00.000000000 +0900
+++ x11/xorg-edit/files/patch-xorgedit__guiframe.cpp 2013-12-17 00:00:00.000000000 +0900
@@ -0,0 +1,54 @@
+--- xorgedit/guiframe.cpp.orig
++++ xorgedit/guiframe.cpp
+@@ -182,8 +182,13 @@
+ otherSectionTab = new wxPanel(layout); // iles/modules/extensions/dri tab panel
+ wxBoxSizer *otherSectionTabSizer=new wxBoxSizer(wxVERTICAL);
+
++#ifdef __clang__
++ wxString *tempList = new wxString[devListSize+1]; // initial list for combo und choice elements
++ wxString *optList = new wxString[optListSize]; // initial list for option combo und choice elements
++#else
+ wxString tempList[devListSize+1]; // initial list for combo und choice elements
+ wxString optList[optListSize]; // initial list for option combo und choice elements
++#endif
+
+ optList[0]=_("----------");
+ optList[1]=_("Add Option");
+@@ -821,6 +826,11 @@
+ if (ShowError()) return;
+ }
+ SetSaved(true);
++
++#ifdef __clang__
++ delete[] optList;
++ delete[] tempList;
++#endif
+ }
+
+ const bool GuiFrame::CreateBackup(void) const
+@@ -1832,8 +1842,13 @@
+
+ warningText->SetLabel(_("Warning: Improper use of this tool can cause damage to your\nxorg.conf and may not start your Xserver.\nYou must restart X to take the changes effect."));
+
++#ifdef __clang__
++ wxString *tempList = new wxString[devListSize+1]; // initial list for combo und choice elements
++ wxString *optList = new wxString[optListSize]; // initial list for option combo und choice elements
++#else
+ wxString tempList[devListSize+1]; // initial list for combo und choice elements
+ wxString optList[optListSize]; // initial list for option combo und choice elements
++#endif
+ unsigned int offset=0;
+ unsigned int i;
+
+@@ -2269,6 +2284,11 @@
+
+ driBox->SetLabel(_("DRI"));
+ return(false);
++
++#ifdef __clang__
++ delete[] optList;
++ delete[] tempList;
++#endif
+ }
+
+ void GuiFrame::SetSaved(const bool save)
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list