Lines 2-40
Link Here
|
2 |
# $FreeBSD$ |
2 |
# $FreeBSD$ |
3 |
|
3 |
|
4 |
PORTNAME= upp |
4 |
PORTNAME= upp |
5 |
DISTVERSION= 11873 |
5 |
DISTVERSION= 14429 |
6 |
PORTREVISION= 3 |
|
|
7 |
CATEGORIES= devel x11-toolkits |
6 |
CATEGORIES= devel x11-toolkits |
8 |
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/2018.1/ |
7 |
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/2020.1/ |
9 |
DISTNAME= ${PORTNAME}-x11-src-${PORTVERSION} |
8 |
DISTNAME= ${PORTNAME}-posix-${PORTVERSION} |
10 |
|
9 |
|
11 |
MAINTAINER= m.sund@arcor.de |
10 |
MAINTAINER= m.sund@arcor.de |
12 |
COMMENT= Ultimate++, a BSD-licensed, cross-platform, C/C++ RAD suite |
11 |
COMMENT= Ultimate++, a BSD-licensed, cross-platform, C/C++ RAD suite |
13 |
|
12 |
|
14 |
LICENSE= BSD2CLAUSE |
13 |
LICENSE= BSD2CLAUSE |
15 |
LICENSE_FILE= ${BUILD_WRKSRC}/Core/Copying |
14 |
LICENSE_FILE= ${WRKSRC}/uppsrc/Core/Copying |
16 |
|
15 |
|
17 |
BROKEN_powerpc= Does not compile on ${ARCH}: error Unknown CPU architecture |
16 |
BROKEN_powerpc= Does not compile on ${ARCH}: error Unknown CPU architecture |
18 |
BROKEN_powerpc64= Does not compile on ${ARCH}: error Unknown CPU architecture |
17 |
BROKEN_powerpc64= Does not compile on ${ARCH}: error Unknown CPU architecture |
19 |
BROKEN_sparc64= Does not compile on ${ARCH} |
18 |
BROKEN_sparc64= Does not compile on ${ARCH} |
20 |
|
19 |
|
21 |
USES= compiler:c++11-lib |
20 |
USES= compiler:c++14-lang pkgconfig:both tar:xz |
22 |
|
21 |
|
23 |
WRKSRC= ${WRKDIR}/${DISTNAME} |
22 |
WRKSRC= ${WRKDIR}/${PORTNAME} |
24 |
BUILD_WRKSRC= ${WRKSRC}/uppsrc |
|
|
25 |
|
23 |
|
26 |
MACRO_FLAGS= -DflagBSD -Dflag${OPSYS:tu} |
24 |
MACRO_FLAGS= -DflagBSD -Dflag${OPSYS:tu} |
27 |
CINC_GUI= -I. -I${LOCALBASE}/include -I${LOCALBASE}/include/freetype2 \ |
|
|
28 |
-I${LOCALBASE}/include/gtk-2.0 -I${LOCALBASE}/include/atk-1.0 \ |
29 |
-I${LOCALBASE}/include/cairo -I${LOCALBASE}/include/gdk-pixbuf-2.0 \ |
30 |
-I${LOCALBASE}/include/pango-1.0 -I${LOCALBASE}/include/glib-2.0 \ |
31 |
-I${LOCALBASE}/lib/glib-2.0/include -I/usr/include |
32 |
CINC_CONSOLE= -I. -I${LOCALBASE}/include -I/usr/include |
33 |
|
25 |
|
34 |
PORTDATA= bazaar examples reference tutorial uppsrc *.bm |
26 |
PORTDATA= bazaar examples reference tutorial uppsrc |
35 |
|
27 |
|
36 |
OPTIONS_DEFINE= MYSQL OPENGL PGSQL SCD SDL USEMALLOC |
28 |
OPTIONS_DEFINE= MYSQL OPENGL PGSQL SDL UDC USEMALLOC |
37 |
OPTIONS_DEFAULT= IDE SCD UMK |
29 |
OPTIONS_DEFAULT= IDE UDC UMK |
38 |
OPTIONS_MULTI= BUILD |
30 |
OPTIONS_MULTI= BUILD |
39 |
OPTIONS_MULTI_BUILD= IDE UMK |
31 |
OPTIONS_MULTI_BUILD= IDE UMK |
40 |
BUILD_DESC= Build/install |
32 |
BUILD_DESC= Build/install |
Lines 42-62
Link Here
|
42 |
IDE_DESKTOP_ENTRIES= "TheIDE" "IDE for cross-platform C++ development" \ |
34 |
IDE_DESKTOP_ENTRIES= "TheIDE" "IDE for cross-platform C++ development" \ |
43 |
"${DATADIR}/uppsrc/ide/theide-48.png" "theide" \ |
35 |
"${DATADIR}/uppsrc/ide/theide-48.png" "theide" \ |
44 |
"Development;IDE;GTK;" false |
36 |
"Development;IDE;GTK;" false |
45 |
IDE_LIB_DEPENDS= libexpat.so:textproc/expat2 \ |
37 |
IDE_LIB_DEPENDS= libfreetype.so:print/freetype2 \ |
46 |
libfreetype.so:print/freetype2 \ |
|
|
47 |
libfontconfig.so:x11-fonts/fontconfig \ |
38 |
libfontconfig.so:x11-fonts/fontconfig \ |
48 |
libnotify.so:devel/libnotify \ |
39 |
libnotify.so:devel/libnotify \ |
49 |
libpng.so:graphics/png |
40 |
libpng.so:graphics/png |
50 |
IDE_PLIST_FILES= bin/theide ${MANPREFIX}/man/man1/theide.1.gz |
41 |
IDE_PLIST_FILES= bin/theide ${MANPREFIX}/man/man1/theide.1.gz |
51 |
IDE_USES= gnome xorg |
42 |
IDE_USES= gnome xorg |
52 |
IDE_USE= XORG=x11,xau,xcb,xcursor,xdmcp,xext,xfixes,xft,xi,xinerama,xrandr,xrender \ |
43 |
IDE_USE= XORG=x11 GNOME=cairo,gdkpixbuf2,gtk30 |
53 |
GNOME=cairo,gdkpixbuf2,gtk20 |
44 |
UDC_DESC= Install spelling dictionaries (*.udc files) |
|
|
45 |
UDC_VARS= PORTDATA+=*.udc |
54 |
UMK_DESC= Build/install UMK (U++ MaKe command line utility) |
46 |
UMK_DESC= Build/install UMK (U++ MaKe command line utility) |
55 |
UMK_PLIST_FILES= bin/umk ${MANPREFIX}/man/man1/umk.1.gz |
47 |
UMK_PLIST_FILES= bin/umk ${MANPREFIX}/man/man1/umk.1.gz |
56 |
USEMALLOC_DESC= Compile without U++ heap allocator |
48 |
USEMALLOC_DESC= Compile without U++ heap allocator |
57 |
USEMALLOC_VARS= MACRO_FLAGS+=-DflagUSEMALLOC |
49 |
USEMALLOC_VARS= MACRO_FLAGS+=-DflagUSEMALLOC |
58 |
SCD_DESC= Install spelling dictionaries (*.scd files) |
|
|
59 |
SCD_VARS= PORTDATA+=*.scd |
60 |
# SDL/OPENGL/MYSQL/PGSQL dependencies are only for run-time for use by executables built by the IDE |
50 |
# SDL/OPENGL/MYSQL/PGSQL dependencies are only for run-time for use by executables built by the IDE |
61 |
SDL_USES= sdl |
51 |
SDL_USES= sdl |
62 |
SDL_USE= SDL=sdl |
52 |
SDL_USE= SDL=sdl |
Lines 76-144
Link Here
|
76 |
CXXFLAGS_i386+= -msse2 |
66 |
CXXFLAGS_i386+= -msse2 |
77 |
|
67 |
|
78 |
post-patch: .SILENT |
68 |
post-patch: .SILENT |
79 |
${CP} ${BUILD_WRKSRC}/Makefile.in ${BUILD_WRKSRC}/Makefile |
69 |
${REINPLACE_CMD} -e '/^CXX[[:blank:]]*=/d ; \ |
80 |
${CP} ${BUILD_WRKSRC}/uMakefile.in ${BUILD_WRKSRC}/uMakefile |
70 |
/^LDFLAGS[[:blank:]]*=/d ; /^LIBPATH[[:blank:]]*=/d ; \ |
81 |
${REINPLACE_CMD} -i '' -e '/^CXX[[:blank:]]*=/d; /^CFLAGS[[:blank:]]*=/d; \ |
|
|
82 |
/^LDFLAGS[[:blank:]]*=/d ; \ |
83 |
/^Macro[[:blank:]]*=/s|-DflagLINUX|${MACRO_FLAGS}| ; \ |
71 |
/^Macro[[:blank:]]*=/s|-DflagLINUX|${MACRO_FLAGS}| ; \ |
84 |
s|\(^CXXFLAGS\)[[:blank:]]*=.*\(-std=.*\)|\1 += \2| ; \ |
72 |
/^CFLAGS[[:blank:]]*=/s|= -O3|+=| ; \ |
85 |
s|\(^LIBPATH\)[[:blank:]]*=.*|\1 = -L${LOCALBASE}/lib -L/usr/lib|' \ |
73 |
/^CXXFLAGS[[:blank:]]*=/s|= -O3|+=| ; \ |
86 |
${BUILD_WRKSRC}/Makefile \ |
|
|
87 |
${BUILD_WRKSRC}/uMakefile |
88 |
${REINPLACE_CMD} -i '' -e 's|\(^CINC\)[[:blank:]]*=.*|\1 = ${CINC_GUI}| ; \ |
89 |
/^OutDir_/s|-Gui-Linux|| ; \ |
90 |
s|-ldl|-lXau -lXdmcp -lxcb -lexecinfo|' \ |
91 |
${BUILD_WRKSRC}/Makefile |
92 |
${REINPLACE_CMD} -i '' -e 's|\(^CINC\)[[:blank:]]*=.*|\1 = ${CINC_CONSOLE}| ; \ |
93 |
/^OutDir_/s|-Linux|| ; \ |
74 |
/^OutDir_/s|-Linux|| ; \ |
94 |
s|-ldl|-lexecinfo|' \ |
75 |
s|-ldl|-lexecinfo|' \ |
95 |
${BUILD_WRKSRC}/uMakefile |
76 |
${WRKSRC}/Makefile \ |
|
|
77 |
${WRKSRC}/uMakefile |
78 |
${REINPLACE_CMD} -i '' -E '/^OutDir_/s|-Gui|| ; \ |
79 |
s/[[:blank:]]?`pkg-config --(cflags|libs) (freetype2|xcb|expat|xinerama|xrender|xft|xdmcp|xext)`//g' \ |
80 |
${WRKSRC}/Makefile |
81 |
# Add ${DATADIR} as an additional path to search for *.upp files |
82 |
# on first TheIDE launch before automatic configuration of assemblies |
83 |
${REINPLACE_CMD} -e '/Scan(GetHomeDirFile("\*"/s|$$|\${.newline} Scan("${DATADIR}/uppsrc");\${.newline} Scan("${DATADIR}/*");|' \ |
84 |
${WRKSRC}/uppsrc/ide/Install.cpp |
96 |
|
85 |
|
97 |
do-build: .SILENT |
86 |
do-build: |
98 |
${ECHO_CMD} "BUILDER = \"GCC\"" > ${WRKSRC}/GCC.bm |
|
|
99 |
${ECHO_CMD} "COMMON_CPP_OPTIONS = \"-std=c++11\";" >> ${WRKSRC}/GCC.bm |
100 |
${ECHO_CMD} "DEBUG_INFO = \"0\";" >> ${WRKSRC}/GCC.bm |
101 |
${ECHO_CMD} "DEBUG_BLITZ = \"1\";" >> ${WRKSRC}/GCC.bm |
102 |
${ECHO_CMD} "DEBUG_LINKMODE = \"1\";" >> ${WRKSRC}/GCC.bm |
103 |
${ECHO_CMD} "DEBUG_OPTIONS = \"-O0\";" >> ${WRKSRC}/GCC.bm |
104 |
${ECHO_CMD} "DEBUG_FLAGS = \"\";" >> ${WRKSRC}/GCC.bm |
105 |
${ECHO_CMD} "DEBUG_LINK = \"\";" >> ${WRKSRC}/GCC.bm |
106 |
${ECHO_CMD} "RELEASE_BLITZ = \"0\";" >> ${WRKSRC}/GCC.bm |
107 |
${ECHO_CMD} "RELEASE_LINKMODE = \"1\";" >> ${WRKSRC}/GCC.bm |
108 |
${ECHO_CMD} "RELEASE_OPTIONS = \"-O2 -ffunction-sections -fdata-sections\";" >> ${WRKSRC}/GCC.bm |
109 |
${ECHO_CMD} "RELEASE_FLAGS = \"\";" >> ${WRKSRC}/GCC.bm |
110 |
${ECHO_CMD} "RELEASE_LINK = \"-Wl,--gc-sections\";" >> ${WRKSRC}/GCC.bm |
111 |
${ECHO_CMD} "DEBUGGER = \"gdb\";" >> ${WRKSRC}/GCC.bm |
112 |
${ECHO_CMD} "PATH = \"\";" >> ${WRKSRC}/GCC.bm |
113 |
${ECHO_CMD} "INCLUDE = \"${LOCALBASE}/include;${LOCALBASE}/include/freetype2;${LOCALBASE}/include/gtk-2.0;${LOCALBASE}/include/atk-1.0;${LOCALBASE}/include/cairo;${LOCALBASE}/include/gdk-pixbuf-2.0;${LOCALBASE}/include/pango-1.0;${LOCALBASE}/include/glib-2.0;${LOCALBASE}/lib/glib-2.0/include;/usr/include\";" >> ${WRKSRC}/GCC.bm |
114 |
${ECHO_CMD} "LIB = \"${LOCALBASE}/lib;/usr/lib\";" >> ${WRKSRC}/GCC.bm |
115 |
${ECHO_CMD} "LINKMODE_LOCK = \"0\";" >> ${WRKSRC}/GCC.bm |
116 |
# Also create CLANG build method, based on GCC with some changes |
117 |
(cd ${WRKSRC} && ${CP} GCC.bm CLANG.bm && \ |
118 |
${SED} -i '' -e '/^BUILDER/s|GCC|CLANG| ; s| -fdata-sections||' \ |
119 |
CLANG.bm) |
120 |
${ECHO_CMD} "COMMON_OPTIONS = \"-Wno-logical-op-parentheses\";" >> ${WRKSRC}/CLANG.bm |
121 |
${ECHO_CMD} "ALLOW_PRECOMPILED_HEADERS = \"0\";" >> ${WRKSRC}/CLANG.bm |
122 |
|
87 |
|
123 |
do-build-IDE-on: |
88 |
do-build-IDE-on: |
124 |
@(cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ |
89 |
@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ |
125 |
${MAKE_FLAGS} Makefile ${_MAKE_JOBS} UPPOUT="../_out/" OutFile="../theide") |
90 |
${MAKE_FLAGS} Makefile ${_MAKE_JOBS} OutFile="theide") |
126 |
|
91 |
|
127 |
do-build-UMK-on: |
92 |
do-build-UMK-on: |
128 |
@(cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ |
93 |
@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ |
129 |
${MAKE_FLAGS} uMakefile ${_MAKE_JOBS} UPPOUT="../_out/" OutFile="../umk") |
94 |
${MAKE_FLAGS} uMakefile ${_MAKE_JOBS} OutFile="umk") |
130 |
|
95 |
|
131 |
do-install: |
96 |
do-install: |
132 |
(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA}" ${STAGEDIR}${DATADIR} \ |
97 |
(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA}" ${STAGEDIR}${DATADIR} \ |
133 |
"-not ( -type d -empty ) -o -name '*.orig'") |
98 |
"-not ( -type d -empty ) -o -name '*.orig'") |
134 |
(cd ${STAGEDIR}${DATADIR}/uppsrc && ${RM} build_info.h *Makefile*) |
99 |
(cd ${STAGEDIR}${DATADIR} && ${RMDIR} uppsrc/ide/SrcUpdater uppsrc/Web) |
135 |
|
100 |
|
136 |
do-install-IDE-on: |
101 |
do-install-IDE-on: |
137 |
${INSTALL_PROGRAM} ${WRKSRC}/theide ${STAGEDIR}${PREFIX}/bin |
102 |
${INSTALL_PROGRAM} ${WRKSRC}/theide ${STAGEDIR}${PREFIX}/bin |
138 |
${INSTALL_MAN} ${BUILD_WRKSRC}/ide/theide.1 ${STAGEDIR}${MANPREFIX}/man/man1 |
103 |
${INSTALL_MAN} ${WRKSRC}/uppsrc/ide/theide.1 ${STAGEDIR}${MANPREFIX}/man/man1 |
139 |
|
104 |
|
140 |
do-install-UMK-on: |
105 |
do-install-UMK-on: |
141 |
${INSTALL_PROGRAM} ${WRKSRC}/umk ${STAGEDIR}${PREFIX}/bin |
106 |
${INSTALL_PROGRAM} ${WRKSRC}/umk ${STAGEDIR}${PREFIX}/bin |
142 |
${INSTALL_MAN} ${BUILD_WRKSRC}/umk/umk.1 ${STAGEDIR}${MANPREFIX}/man/man1 |
107 |
${INSTALL_MAN} ${WRKSRC}/uppsrc/umk/umk.1 ${STAGEDIR}${MANPREFIX}/man/man1 |
143 |
|
108 |
|
144 |
.include <bsd.port.post.mk> |
109 |
.include <bsd.port.post.mk> |