View | Details | Raw Unified | Return to bug 216938 | Differences between
and this patch

Collapse All | Expand All

(-)upp/Makefile (-38 / +73 lines)
Lines 2-11 Link Here
2
# $FreeBSD: head/devel/upp/Makefile 425758 2016-11-08 19:29:56Z linimon $
2
# $FreeBSD: head/devel/upp/Makefile 425758 2016-11-08 19:29:56Z linimon $
3
3
4
PORTNAME=	upp
4
PORTNAME=	upp
5
PORTVERSION=	9251
5
PORTVERSION=	10804
6
PORTREVISION=	1
7
CATEGORIES=	devel x11-toolkits
6
CATEGORIES=	devel x11-toolkits
8
MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/2015.2/
7
MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/2017.1/
9
DISTNAME=	${PORTNAME}-x11-src-${PORTVERSION}
8
DISTNAME=	${PORTNAME}-x11-src-${PORTVERSION}
10
9
11
MAINTAINER=	m.sund@arcor.de
10
MAINTAINER=	m.sund@arcor.de
Lines 14-42 Link Here
14
LICENSE=	BSD2CLAUSE
13
LICENSE=	BSD2CLAUSE
15
LICENSE_FILE=	${BUILD_WRKSRC}/Core/Copying
14
LICENSE_FILE=	${BUILD_WRKSRC}/Core/Copying
16
15
17
LIB_DEPENDS=	libfreetype.so:print/freetype2 \
16
USES=		compiler:c++11-lib execinfo
18
		libexpat.so:textproc/expat2 \
19
		libnotify.so:devel/libnotify
20
21
USES=		execinfo gmake
22
USE_XORG=	xft
23
USE_GNOME=	gtk20
24
17
25
WRKSRC=		${WRKDIR}/${DISTNAME}
18
WRKSRC=		${WRKDIR}/${DISTNAME}
26
BUILD_WRKSRC=	${WRKSRC}/uppsrc
19
BUILD_WRKSRC=	${WRKSRC}/uppsrc
27
20
28
MACRO_FLAGS=	-DflagGUI -DflagMT -DflagGCC -DflagSHARED -DflagPOSIX -DflagBSD -DflagFREEBSD
21
MACRO_FLAGS=	-DflagBSD -Dflag${OPSYS:tu}
29
22
CINC_GUI=	-I. -I${LOCALBASE}/include -I${LOCALBASE}/include/freetype2 \
30
MAKE_ARGS=	UPPOUT="../_out/" OutFile="../theide" \
31
		Macro="${MACRO_FLAGS}" \
32
		LIBPATH="-L${LOCALBASE}/lib -L/usr/lib" \
33
		CINC="-I. -I${LOCALBASE}/include -I${LOCALBASE}/include/freetype2 \
34
		-I${LOCALBASE}/include/gtk-2.0 -I${LOCALBASE}/include/atk-1.0 \
23
		-I${LOCALBASE}/include/gtk-2.0 -I${LOCALBASE}/include/atk-1.0 \
35
		-I${LOCALBASE}/include/cairo -I${LOCALBASE}/include/gdk-pixbuf-2.0 \
24
		-I${LOCALBASE}/include/cairo -I${LOCALBASE}/include/gdk-pixbuf-2.0 \
36
		-I${LOCALBASE}/include/pango-1.0 -I${LOCALBASE}/include/glib-2.0 \
25
		-I${LOCALBASE}/include/pango-1.0 -I${LOCALBASE}/include/glib-2.0 \
37
		-I${LOCALBASE}/lib/glib-2.0/include -I/usr/include"
26
		-I${LOCALBASE}/lib/glib-2.0/include -I/usr/include
38
27
CINC_CONSOLE=	-I. -I${LOCALBASE}/include -I/usr/include
39
MAKE_JOBS_UNSAFE=	yes
40
28
41
BROKEN_aarch64=	Does not compile on ${ARCH}: error Unknown CPU architecture
29
BROKEN_aarch64=	Does not compile on ${ARCH}: error Unknown CPU architecture
42
BROKEN_powerpc=	Does not compile on ${ARCH}
30
BROKEN_powerpc=	Does not compile on ${ARCH}
Lines 44-76 Link Here
44
32
45
PORTDATA=	bazaar examples reference tutorial uppsrc *.bm
33
PORTDATA=	bazaar examples reference tutorial uppsrc *.bm
46
34
47
DESKTOP_ENTRIES="TheIDE" "IDE for cross-platform C++ development" \
35
OPTIONS_DEFINE=	MYSQL OPENGL PGSQL SCD SDL USEMALLOC
36
OPTIONS_DEFAULT=	IDE SCD UMK
37
OPTIONS_MULTI=	BUILD
38
OPTIONS_MULTI_BUILD=	IDE UMK
39
BUILD_DESC=	Build/install
40
IDE_DESC=	Build/install TheIDE (integrated development environment)
41
IDE_DESKTOP_ENTRIES=	"TheIDE" "IDE for cross-platform C++ development" \
48
		"${DATADIR}/uppsrc/ide/theide-48.png" "theide" \
42
		"${DATADIR}/uppsrc/ide/theide-48.png" "theide" \
49
		"Development;IDE;GTK;" false
43
		"Development;IDE;GTK;" false
50
44
IDE_LIB_DEPENDS=	libexpat.so:textproc/expat2 \
51
OPTIONS_DEFINE=	SDL OPENGL MYSQL PGSQL USEMALLOC
45
		libfreetype.so:print/freetype2 \
46
		libfontconfig.so:x11-fonts/fontconfig \
47
		libnotify.so:devel/libnotify \
48
		libpng.so:graphics/png
49
IDE_PLIST_FILES=	bin/theide man/man1/theide.1.gz
50
IDE_USE=	XORG=x11,xau,xcb,xcursor,xdmcp,xext,xfixes,xft,xi,xinerama,xrandr,xrender \
51
		GNOME=cairo,gdkpixbuf2,gtk20
52
IDE_USES=	gmake
53
UMK_DESC=	Build/install UMK (U++ MaKe command line utility)
54
UMK_PLIST_FILES=	bin/umk man/man1/umk.1.gz
52
USEMALLOC_DESC=	Compile without U++ heap allocator
55
USEMALLOC_DESC=	Compile without U++ heap allocator
53
USEMALLOC_VARS=	MACRO_FLAGS+=-DflagUSEMALLOC
56
USEMALLOC_VARS=	MACRO_FLAGS+=-DflagUSEMALLOC
54
57
SCD_DESC=	Install spelling dictionaries (*.scd files)
55
PLIST_FILES=	bin/theide
58
SCD_VARS=	PORTDATA+=*.scd
56
57
SDL_USE=	sql
59
SDL_USE=	sql
58
OPENGL_USE=	gl
60
OPENGL_USE=	gl
59
MYSQL_USE=	mysql=yes
61
MYSQL_USE=	mysql=yes
60
PGSQL_USES=	pgsql
62
PGSQL_USES=	pgsql
61
63
64
.include <bsd.port.pre.mk>
65
66
.if ${CHOSEN_COMPILER_TYPE} == clang
67
# Disable some warnings for Clang
68
CXXFLAGS+=	-Wno-logical-op-parentheses
69
.endif
70
62
post-patch: .SILENT
71
post-patch: .SILENT
63
	${MV} ${BUILD_WRKSRC}/Makefile.in ${BUILD_WRKSRC}/Makefile
72
	${CP} ${BUILD_WRKSRC}/Makefile.in ${BUILD_WRKSRC}/Makefile
64
	${REINPLACE_CMD} -e '/^CXX =/d;/^CFLAGS =/d;/^CXXFLAGS =/d;/^LDFLAGS =/d' \
73
	${CP} ${BUILD_WRKSRC}/uMakefile.in ${BUILD_WRKSRC}/uMakefile
65
		-e 's|-Linux-|-BSD-FreeBSD-|' \
74
	${REINPLACE_CMD} -i '' -e '/^CXX =/d; /^CFLAGS =/d; /^LDFLAGS =/d ; \
66
		-e 's|-ldl|-lXau -lXdmcp -lfreetype -lexpat -lxcb -lpng -lexecinfo|' \
75
		/^Macro =/s|-DflagLINUX|${MACRO_FLAGS}| ; \
76
		s|\(^CXXFLAGS\) =.*\(-std=.*\)|\1 += \2| ; \
77
		s|\(^LIBPATH\) =.*|\1 = -L${LOCALBASE}/lib -L/usr/lib|' \
78
		${BUILD_WRKSRC}/Makefile \
79
		${BUILD_WRKSRC}/uMakefile
80
	${REINPLACE_CMD} -i '' -e 's|\(^CINC\) =.*|\1 = ${CINC_GUI}| ; \
81
		/^OutDir_/s|-Gui-Linux|| ; /^OutDir_/s|-Mt|| ; \
82
		s|-ldl|-lXau -lXdmcp -lxcb -lexecinfo|' \
67
		${BUILD_WRKSRC}/Makefile
83
		${BUILD_WRKSRC}/Makefile
68
# Use simplified upstream patch to fix the build
84
	${REINPLACE_CMD} -i '' -e 's|\(^CINC\) =.*|\1 = ${CINC_CONSOLE}| ; \
69
	${REINPLACE_CMD} -e '/ftoutln.h/d' ${BUILD_WRKSRC}/CtrlCore/GtkDrawText.cpp
85
		/^OutDir_/s|-Linux|| ; \
86
		s|-ldl|-lexecinfo|' \
87
		${BUILD_WRKSRC}/uMakefile
70
88
71
post-build: .SILENT
89
do-build: .SILENT
72
	${ECHO_CMD} "BUILDER = \"GCC\"" > ${WRKSRC}/GCC.bm
90
	${ECHO_CMD} "BUILDER = \"GCC\"" > ${WRKSRC}/GCC.bm
73
	${ECHO_CMD} "COMMON_CPP_OPTIONS = \"-std=c++0x\";" >> ${WRKSRC}/GCC.bm
91
	${ECHO_CMD} "COMMON_CPP_OPTIONS = \"-std=c++11\";" >> ${WRKSRC}/GCC.bm
74
	${ECHO_CMD} "DEBUG_INFO = \"0\";" >> ${WRKSRC}/GCC.bm
92
	${ECHO_CMD} "DEBUG_INFO = \"0\";" >> ${WRKSRC}/GCC.bm
75
	${ECHO_CMD} "DEBUG_BLITZ = \"1\";" >> ${WRKSRC}/GCC.bm
93
	${ECHO_CMD} "DEBUG_BLITZ = \"1\";" >> ${WRKSRC}/GCC.bm
76
	${ECHO_CMD} "DEBUG_LINKMODE = \"1\";" >> ${WRKSRC}/GCC.bm
94
	${ECHO_CMD} "DEBUG_LINKMODE = \"1\";" >> ${WRKSRC}/GCC.bm
Lines 80-86 Link Here
80
	${ECHO_CMD} "RELEASE_BLITZ = \"0\";" >> ${WRKSRC}/GCC.bm
98
	${ECHO_CMD} "RELEASE_BLITZ = \"0\";" >> ${WRKSRC}/GCC.bm
81
	${ECHO_CMD} "RELEASE_LINKMODE = \"1\";" >> ${WRKSRC}/GCC.bm
99
	${ECHO_CMD} "RELEASE_LINKMODE = \"1\";" >> ${WRKSRC}/GCC.bm
82
	${ECHO_CMD} "RELEASE_OPTIONS = \"-O2 -ffunction-sections -fdata-sections\";" >> ${WRKSRC}/GCC.bm
100
	${ECHO_CMD} "RELEASE_OPTIONS = \"-O2 -ffunction-sections -fdata-sections\";" >> ${WRKSRC}/GCC.bm
83
	${ECHO_CMD} "RELEASE_SIZE_OPTIONS = \"-Os -finline-limit=20 -ffunction-sections -fdata-sections\";" >> ${WRKSRC}/GCC.bm
84
	${ECHO_CMD} "RELEASE_FLAGS = \"\";" >> ${WRKSRC}/GCC.bm
101
	${ECHO_CMD} "RELEASE_FLAGS = \"\";" >> ${WRKSRC}/GCC.bm
85
	${ECHO_CMD} "RELEASE_LINK = \"-Wl,--gc-sections\";" >> ${WRKSRC}/GCC.bm
102
	${ECHO_CMD} "RELEASE_LINK = \"-Wl,--gc-sections\";" >> ${WRKSRC}/GCC.bm
86
	${ECHO_CMD} "DEBUGGER = \"gdb\";" >> ${WRKSRC}/GCC.bm
103
	${ECHO_CMD} "DEBUGGER = \"gdb\";" >> ${WRKSRC}/GCC.bm
Lines 90-103 Link Here
90
	${ECHO_CMD} "LINKMODE_LOCK = \"0\";" >> ${WRKSRC}/GCC.bm
107
	${ECHO_CMD} "LINKMODE_LOCK = \"0\";" >> ${WRKSRC}/GCC.bm
91
# Also create CLANG build method, based on GCC with some changes
108
# Also create CLANG build method, based on GCC with some changes
92
	(cd ${WRKSRC} && ${CP} GCC.bm CLANG.bm && \
109
	(cd ${WRKSRC} && ${CP} GCC.bm CLANG.bm && \
93
		${SED} -i '' -e '/^BUILDER/s|GCC|CLANG| ; \
110
		${SED} -i '' -e '/^BUILDER/s|GCC|CLANG| ; s| -fdata-sections||' \
94
		s| -fdata-sections|| ; s| -finline-limit=20||' CLANG.bm)
111
		CLANG.bm)
95
	${ECHO_CMD} "COMMON_OPTIONS = \"-Wno-logical-op-parentheses\";" >> ${WRKSRC}/CLANG.bm
112
	${ECHO_CMD} "COMMON_OPTIONS = \"-Wno-logical-op-parentheses\";" >> ${WRKSRC}/CLANG.bm
96
	${ECHO_CMD} "ALLOW_PRECOMPILED_HEADERS = \"0\";" >> ${WRKSRC}/CLANG.bm
113
	${ECHO_CMD} "ALLOW_PRECOMPILED_HEADERS = \"0\";" >> ${WRKSRC}/CLANG.bm
97
114
115
do-build-IDE-on:
116
	@(cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \
117
		${MAKE_FLAGS} Makefile ${_MAKE_JOBS} UPPOUT="../_out/" OutFile="../theide")
118
119
do-build-UMK-on:
120
	@(cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \
121
		${MAKE_FLAGS} uMakefile ${_MAKE_JOBS} UPPOUT="../_out/" OutFile="../umk")
122
123
post-build:
124
	@${RM} ${BUILD_WRKSRC}/build_info.h
125
98
do-install:
126
do-install:
99
	${INSTALL_PROGRAM} ${WRKSRC}/theide ${STAGEDIR}${PREFIX}/bin
100
	(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA} -not ( -type d -empty )" \
127
	(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA} -not ( -type d -empty )" \
101
		${STAGEDIR}${DATADIR})
128
		${STAGEDIR}${DATADIR})
102
129
103
.include <bsd.port.mk>
130
do-install-IDE-on:
131
	${INSTALL_PROGRAM} ${WRKSRC}/theide ${STAGEDIR}${PREFIX}/bin
132
	${INSTALL_MAN} ${BUILD_WRKSRC}/ide/theide.1 ${STAGEDIR}${PREFIX}/man/man1
133
134
do-install-UMK-on:
135
	${INSTALL_PROGRAM} ${WRKSRC}/umk ${STAGEDIR}${PREFIX}/bin
136
	${INSTALL_MAN} ${BUILD_WRKSRC}/umk/umk.1 ${STAGEDIR}${PREFIX}/man/man1
137
138
.include <bsd.port.post.mk>
(-)upp/distinfo (-2 / +3 lines)
Lines 1-2 Link Here
1
SHA256 (upp-x11-src-9251.tar.gz) = f1012e15914a4a9d4c70c008b94b932db7dd39ff043bdf5c4584a45f7580ebd5
1
TIMESTAMP = 1485783187
2
SIZE (upp-x11-src-9251.tar.gz) = 45014025
2
SHA256 (upp-x11-src-10804.tar.gz) = 271e313af801bac3ca78ca3c90bf9976d92ca9542427425758b4a8e69be86cba
3
SIZE (upp-x11-src-10804.tar.gz) = 56728218
(-)upp/files/patch-uppsrc_Core_Core.h (-18 lines)
Lines 1-18 Link Here
1
--- uppsrc/Core/Core.h.orig	2015-11-29 14:17:07 UTC
2
+++ uppsrc/Core/Core.h
3
@@ -342,12 +342,12 @@ static const MemDiagCls sMemDiagHelper__
4
 
5
 //some global definitions
6
 
7
-#if !defined(STLPORT) && _MSC_VER < 1600
8
+#if !defined(STLPORT) && _MSC_VER < 1600 && !defined(_LIBCPP_VERSION)
9
 inline UPP::int64  abs(UPP::int64 x)          { return x < 0 ? -x : x; }
10
 #endif
11
 
12
-#ifdef COMPILER_GCC
13
-inline double abs(double x)                   { return fabs(x); }
14
+#if defined(COMPILER_GCC) && !defined(_LIBCPP_VERSION)
15
+inline double abs(double x) throw()           { return fabs(x); }
16
 #endif
17
 
18
 void      RegisterTopic__(const char *topicfile, const char *topic, const char *title, const UPP::byte *data, int len);

Return to bug 216938