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 ${MANPREFIX}/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 ${MANPREFIX}/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 |
|
98 |
do-install: |
123 |
do-install: |
|
|
124 |
(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA}" ${STAGEDIR}${DATADIR} \ |
125 |
"-not ( -type d -empty )") |
126 |
|
127 |
do-install-IDE-on: |
99 |
${INSTALL_PROGRAM} ${WRKSRC}/theide ${STAGEDIR}${PREFIX}/bin |
128 |
${INSTALL_PROGRAM} ${WRKSRC}/theide ${STAGEDIR}${PREFIX}/bin |
100 |
(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA} -not ( -type d -empty )" \ |
129 |
${INSTALL_MAN} ${BUILD_WRKSRC}/ide/theide.1 ${STAGEDIR}${MANPREFIX}/man/man1 |
101 |
${STAGEDIR}${DATADIR}) |
|
|
102 |
|
130 |
|
103 |
.include <bsd.port.mk> |
131 |
do-install-UMK-on: |
|
|
132 |
${INSTALL_PROGRAM} ${WRKSRC}/umk ${STAGEDIR}${PREFIX}/bin |
133 |
${INSTALL_MAN} ${BUILD_WRKSRC}/umk/umk.1 ${STAGEDIR}${MANPREFIX}/man/man1 |
134 |
|
135 |
post-install: |
136 |
(cd ${STAGEDIR}${DATADIR}/uppsrc && ${RM} build_info.h *Makefile*) |
137 |
|
138 |
.include <bsd.port.post.mk> |