aboutsummaryrefslogtreecommitdiffstats
path: root/www/chromium/Makefile
blob: 138872e80b691aefa1816270bb917f7814827feb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# New ports collection makefile for:    chromium
# Date created:             September 30 2009
# Whom:                 Florent Thoumie <flz@FreeBSD.org>
#
# $FreeBSD$
#

PORTNAME=   chromium
DISTVERSIONPREFIX=  courgette-redacted-
DISTVERSION=    5.0.375.127
CATEGORIES= www
MASTER_SITES=   http://chromium.hybridsource.org/old/ports/

MAINTAINER= chromium@hybridsource.org
COMMENT=    A mostly BSD-licensed web browser based on WebKit and Gtk+

BUILD_DEPENDS=  flex:${PORTSDIR}/textproc/flex      \
        gperf:${PORTSDIR}/devel/gperf       \
        bash:${PORTSDIR}/shells/bash        \
        pkg-config:${PORTSDIR}/devel/pkg-config \
        nss>=3.12:${PORTSDIR}/security/nss  \
        yasm:${PORTSDIR}/devel/yasm

LIB_DEPENDS=    execinfo.1:${PORTSDIR}/devel/libexecinfo    \
        cairo.2:${PORTSDIR}/graphics/cairo      \
        dbus-1.3:${PORTSDIR}/devel/dbus         \
        dbus-glib-1.2:${PORTSDIR}/devel/dbus-glib   \
        Xss.1:${PORTSDIR}/x11/libXScrnSaver     \
        asound.2:${PORTSDIR}/audio/alsa-lib     \
        freetype.9:${PORTSDIR}/print/freetype2

RUN_DEPENDS=    ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:${PORTSDIR}/audio/alsa-plugins

ONLY_FOR_ARCHS= i386 amd64
USE_BZIP2=  yes
USE_BISON=  build
USE_PYTHON= 2.6         # only needed at build time
USE_PERL5_BUILD=yes
USE_GMAKE=  yes
USE_GCC=    4.2+
MAN1=       chrome.1
USE_XORG=   scrnsaverproto
USE_GNOME=  glib20 gtk20 gconf2
LICENSE_COMB=   multi
LICENSE=    BSD LGPL21 MPL

ALL_TARGET= chrome

#user tunables showing defaults, some won't compile if changed
#GYP_DEFINES+=  target_arch=ia32     #or x64, should be detected automatically
#GYP_DEFINES+=  use_system_bzip2=1
#GYP_DEFINES+=  use_system_libevent=0
#GYP_DEFINES+=  use_system_libjpeg=1
#GYP_DEFINES+=  use_system_libpng=1
GYP_DEFINES+=   use_system_libxml=1
#GYP_DEFINES+=  use_system_sqlite=0
#GYP_DEFINES+=  use_system_zlib=1

OPTIONS=    CODECS      "Compile and enable patented codecs like H.264" off

DESKTOP_ENTRIES=    "Chromium" \
            "${COMMENT}" \
            "${DATADIR}/product_logo_48.png" \
            "chrome" \
            "Application;Network;WebBrowser;" \
            "true"

.include <bsd.port.pre.mk>

.if ${OSVERSION} < 700000
BROKEN=     does not build on 6.X
.endif

.if defined(WITH_CODECS)
GYP_DEFINES+=   ffmpeg_branding=Chrome
.else
GYP_DEFINES+=   ffmpeg_branding=Chromium
.endif

.if !defined(WITH_DEBUG)
BUILDTYPE=  Release
.else
BUILDTYPE=  Debug
.endif

MAKE_ENV+=  BUILDTYPE=${BUILDTYPE}
MAKE_JOBS_SAFE= yes
STRIP=

pre-everything::
    @${ECHO_MSG}
    @${ECHO_MSG} "To build Chromium, you should have around 1 GB of memory"
.if defined(WITH_DEBUG)
    @${ECHO_MSG} "and lots of free diskspace (~ 7GB)."
.else
    @${ECHO_MSG} "and a fair amount of free diskspace (~ 1.5GB)."
.endif
    @${ECHO_MSG}

post-patch:
    @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|"   \
        ${WRKSRC}/base/base.gypi            \
        ${WRKSRC}/build/common.gypi         \
        ${WRKSRC}/third_party/icu/public/common/unicode/pfreebsd.h   \
        ${WRKSRC}/third_party/tcmalloc/chromium/src/config_freebsd.h \
        ${WRKSRC}/third_party/WebKit/WebCore/plugins/PluginDatabase.cpp \
        ${WRKSRC}/v8/tools/gyp/v8.gyp

do-configure:
    cd ${WRKSRC} && \
        ${SETENV} GYP_GENERATORS="make" GYP_DEFINES="${GYP_DEFINES}" ${PYTHON_CMD} ./build/gyp_chromium chrome/chrome.gyp --depth ./

do-install:
    ${MKDIR} ${DATADIR}
    ${INSTALL_MAN} ${WRKSRC}/out/${BUILDTYPE}/chrome.1 ${MANPREFIX}/man/man1
    ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/chrome.pak ${DATADIR}
    ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/product_logo_48.png ${DATADIR}
    ${INSTALL_SCRIPT} ${WRKSRC}/out/${BUILDTYPE}/chrome-wrapper ${DATADIR}
    ${INSTALL_SCRIPT} ${WRKSRC}/out/${BUILDTYPE}/xdg-settings ${DATADIR}
.for f in chrome ffmpegsumo_nolink libffmpegsumo.so mksnapshot protoc
    ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${f} ${DATADIR}
.endfor
    cd ${WRKSRC}/out/${BUILDTYPE} && ${COPYTREE_SHARE} "locales resources" ${DATADIR}
    ${LN} -sf ${DATADIR}/chrome ${PREFIX}/bin/

.include <bsd.port.post.mk>