aboutsummaryrefslogtreecommitdiffstats
path: root/cad/brlcad/Makefile
blob: cc4ddea5875b93e26e497cbdf20a2324e0fbedfc (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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
# New ports collection makefile for:    brlcad
# Date created:     Jan 2005
# Whom:         Pedro F. Giffuni <giffunip@asme.org>
#
# $FreeBSD$
#

PORTNAME=   brlcad
PORTVERSION=    7.8.4
CATEGORIES= cad
MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= brlcad

MAINTAINER= erik@smluc.org
COMMENT=    CSG modelling system from the US Ballistic Research Laboratory

LIB_DEPENDS=    png.5:${PORTSDIR}/graphics/png \
        rle.1:${PORTSDIR}/graphics/urt

USE_AUTOTOOLS=  libtool:15
USE_BZIP2=  yes
USE_GL=     yes
USE_GMAKE=  yes

PREFIX?=    ${LOCALBASE}/${PORTNAME}
GNU_CONFIGURE=  yes
NO_MTREE=   yes
USE_LDCONFIG=   yes

CPPFLAGS+=  -I${LOCALBASE}/include
LDFLAGS+=   -L${LOCALBASE}/lib
CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
CONFIGURE_ARGS+=--enable-tcl-build --enable-tk-build --disable-adrt-build \
    --with-libs="-lpng ${EXTRA_LIBS}" --program-transform-name="" \
    --disable-jove-build
PLIST_SUB+= PORTVERSION=${PORTVERSION}

MAN1=   alias-pix.1 all_sf.1 anim_cascade.1 anim_fly.1 anim_hardtrack.1     \
    anim_keyread.1 anim_lookat.1 anim_offset.1 anim_orient.1        \
    anim_script.1 anim_sort.1 anim_time.1 anim_track.1 anim_turn.1      \
    ap-pix.1 asc-nmg.1 asc-pl.1 awf.1 azel.1 bary.1 benchmark.1     \
    bot_shell-vtk.1 brlcad.1 brlman.1 buffer.1 bw-fb.1 bw-imp.1 bw-pix.1    \
    bw-png.1 bw-ps.1 bw-rle.1 bw3-pix.1 bwcrop.1 bwdiff.1 bwfilter.1    \
    bwhist.1 bwhisteq.1 bwmod.1 bwrect.1 bwrot.1 bwscale.1 bwshrink.1   \
    bwstat.1 bwthresh.1 cad_boundp.1 cad_parea.1 cat-fb.1 cell-fb.1     \
    chan_mult.1 chan_permute.1 cmap-fb.1 comgeom-g.1 conv-vg2g.1 cv.1   \
    cy-g.1 dbclean.1 dbcp.1 dbupgrade.1 decimate.1 dpix-pix.1 dunncolor.1   \
    dunnsnap.1 dxf-g.1 enf-g.1 euclid-g.1 fast4-g.1 fb-bw.1 fb-cmap.1   \
    fb-fb.1 fb-orle.1 fb-pix.1 fb-png.1 fb-rle.1 fbanim.1 fbcbars.1     \
    fbclear.1 fbcmap.1 fbcmrot.1 fbcolor.1 fbed.1 fbfade.1 fbframe.1    \
    fbfree.1 fbgamma.1 fbgrid.1 fbhelp.1 fblabel.1 fbline.1 fbpoint.1   \
    fbscanplot.1 fbserv.1 fbstretch.1 fbzoom.1 firpass.1 g-acad.1 g-dxf.1   \
    g-euclid.1 g-iges.1 g-nff.1 g-nmg.1 g-obj.1 g-shell.rect.1 g-stl.1  \
    g-tankill.1 g-var.1 g-vrml.1 g-x3d.1 g2asc.1 g_diff.1 g_lint.1 g_qa.1   \
    gencolor.1 gif-fb.1 gif2fb.1 halftone.1 hd.1 iges-g.1 imgdims.1 ir-X.1  \
    ir-sgi.1 irdisp.1 lgt.1 loop.1 mac-pix.1 mged.1 mk_bolt.1 mk_gastank.1  \
    mk_handle.1 mk_window.1 mk_winfrm.1 mk_wire.1 morphedit.1 nastran-g.1   \
    nirt.1 nmg-bot.1 nmg-rib.1 op-bw.1 orle-fb.1 orle-pix.1 patch-g.1   \
    pcd-pix.1 picket_fence.1 pix-alias.1 pix-bw.1 pix-bw3.1 pix-fb.1    \
    pix-orle.1 pix-png.1 pix-ps.1 pix-rle.1 pix-sun.1 pix2asc.1     \
    pixautosize.1 pixbackgnd.1 pixbgstrip.1 pixblend.1 pixborder.1      \
    pixbustup.1 pixclump.1 pixcolors.1 pixcut.1 pixdiff.1 pixdsplit.1   \
    pixfade.1 pixfilter.1 pixhalve.1 pixhist.1 pixhist3d-pl.1 pixhist3d.1   \
    pixinterp2x.1 pixmatte.1 pixmerge.1 pixmorph.1 pixrect.1 pixrot.1   \
    pixsaturate.1 pixscale.1 pixshrink.1 pixstat.1 pixsubst.1 pixtile.1 \
    pixuntile.1 pl-X.1 pl-X10.1 pl-asc.1 pl-fb.1 pl-hpgl.1 pl-pl.1 pl-ps.1  \
    pl-sgi.1 pl-starbase.1 pl-tek.1 plcolor.1 pldebug.1 plgetframe.1    \
    plline2.1 plrot.1 ply-g.1 png-bw.1 png-fb.1 png-pix.1 png_info.1    \
    polar-fb.1 poly-bot.1 pp-fb.1 proe-g.1 query.1 remrt.1 rle-fb.1     \
    rle-pix.1 rpatch.1 rt.1 rt_bot_faces.1 rtarea.1 rtcheck.1 rtedge.1  \
    rtg3.1 rthide.1 rtpp.1 rtrange.1 rtray.1 rtregis.1 rtscale.1 rtshot.1   \
    rttherm.1 rtwalk.1 rtweight.1 rtxray.1 scriptsort.1 secpass.1       \
    shapefact.1 showshot.1 showtherm.1 ssamp-bw.1 stl-g.1 sun-pix.1     \
    tabinterp.1 tabsub.1 tankill-g.1 tclsh.1 terrain.1 vas4.1 vdeck.1   \
    viewpoint-g.1 wavelet.1 wish.1

MAN3=   3DBorder.3 Access.3 AddErrInfo.3 AddOption.3 Alloc.3 AllowExc.3     \
    AppInit.3 AssocData.3 Async.3 BackgdErr.3 Backslash.3 BindTable.3   \
    BoolObj.3 ByteArrObj.3 CallDel.3 CanvPsY.3 CanvTkwin.3 CanvTxtInfo.3    \
    ChnlStack.3 Clipboard.3 ClrSelect.3 CmdCmplt.3 Concat.3 ConfigWidg.3    \
    ConfigWind.3 CoordToWin.3 CrtChannel.3 CrtChnlHdlr.3 CrtCloseHdlr.3 \
    CrtCmHdlr.3 CrtCommand.3 CrtErrHdlr.3 CrtFileHdlr.3 CrtGenHdlr.3    \
    CrtImgType.3 CrtInterp.3 CrtItemType.3 CrtMathFnc.3 CrtObjCmd.3     \
    CrtPhImgFmt.3 CrtSelHdlr.3 CrtSlave.3 CrtTimerHdlr.3 CrtTrace.3     \
    CrtWindow.3 DString.3 DeleteImg.3 DetachPids.3 DoOneEvent.3     \
    DoWhenIdle.3 DoubleObj.3 DrawFocHlt.3 DumpActiveMemory.3 Encoding.3 \
    Environment.3 Eval.3 EventHndlr.3 Exit.3 ExprLong.3 ExprLongObj.3   \
    FileSystem.3 FindExec.3 FindPhoto.3 FontId.3 FreeXId.3 GeomReq.3    \
    GetAnchor.3 GetBitmap.3 GetCapStyl.3 GetClrmap.3 GetColor.3     \
    GetCursor.3 GetCwd.3 GetDash.3 GetFont.3 GetGC.3 GetHINSTANCE.3     \
    GetHWND.3 GetHostName.3 GetImage.3 GetIndex.3 GetInt.3 GetJoinStl.3 \
    GetJustify.3 GetOpnFl.3 GetOption.3 GetPixels.3 GetPixmap.3     \
    GetRelief.3 GetRootCrd.3 GetScroll.3 GetSelect.3 GetStdChan.3       \
    GetTime.3 GetUid.3 GetVRoot.3 GetVersion.3 GetVisual.3 Grab.3       \
    HWNDToWindow.3 HandleEvent.3 Hash.3 IdToWindow.3 ImgChanged.3 Init.3    \
    InitStubs.3 IntObj.3 InternAtom.3 Interp.3 LinkVar.3 ListObj.3      \
    Macintosh.3 MainLoop.3 MainWin.3 MaintGeom.3 ManageGeom.3 MapWindow.3   \
    MeasureChar.3 MoveToplev.3 Name.3 NameOfImg.3 Notifier.3 Object.3   \
    ObjectType.3 OpenFileChnl.3 OpenTcp.3 OwnSelect.3 Panic.3 ParseArgv.3   \
    ParseCmd.3 PkgRequire.3 Preserve.3 PrintDbl.3 QWinEvent.3       \
    RecEvalObj.3 RecordEval.3 RegExp.3 Restack.3 RestrictEv.3       \
    SaveResult.3 SetAppName.3 SetCaret.3 SetClass.3 SetClassProcs.3     \
    SetErrno.3 SetGrid.3 SetOptions.3 SetRecLmt.3 SetResult.3 SetVar.3  \
    SetVisual.3 Signal.3 Sleep.3 SourceRCFile.3 SplitList.3 SplitPath.3 \
    StaticPkg.3 StdChannels.3 StrMatch.3 StrictMotif.3 StringObj.3      \
    SubstObj.3 TCL_MEM_DEBUG.3 Tcl_Main.3 TextLayout.3 Thread.3     \
    TkInitStubs.3 Tk_Init.3 Tk_Main.3 ToUpper.3 TraceCmd.3 TraceVar.3   \
    Translate.3 UniCharIsAlpha.3 UpVar.3 Utf.3 WindowId.3 WrongNumArgs.3    \
    htond.3 libbu.3 libcursor.3 libfb.3 liborle.3 libplot3.3 librt.3    \
    libwdb.3 redblack.3

MAN5=   bw.5 cmap.5 pix.5 plot3.5

MANN=   Archetype.n Tcl.n Toplevel.n Widget.n after.n append.n array.n      \
    bell.n bgerror.n binary.n bind.n bindtags.n bitmap.n body.n break.n \
    button.n canvas.n case.n catch.n cd.n checkbutton.n chooseColor.n   \
    chooseDirectory.n class.n clipboard.n clock.n close.n code.n colors.n   \
    concat.n configbody.n console.n continue.n cursors.n dde.n delete.n \
    destroy.n dialog.n encoding.n ensemble.n entry.n eof.n error.n eval.n   \
    event.n exec.n exit.n expr.n fblocked.n fconfigure.n fcopy.n file.n \
    fileevent.n filename.n find.n flush.n focus.n focusNext.n font.n    \
    for.n foreach.n format.n frame.n getOpenFile.n gets.n glob.n global.n   \
    grab.n grid.n history.n http.n if.n image.n incr.n info.n interp.n  \
    is.n itcl.n itclvars.n itk.n itkvars.n iwidgets_buttonbox.n     \
    iwidgets_calendar.n iwidgets_canvasprintbox.n               \
    iwidgets_canvasprintdialog.n iwidgets_checkbox.n iwidgets_combobox.n    \
    iwidgets_dateentry.n iwidgets_datefield.n iwidgets_dialog.n     \
    iwidgets_dialogshell.n iwidgets_disjointlistbox.n           \
    iwidgets_entryfield.n iwidgets_extbutton.n              \
    iwidgets_extfileselectionbox.n iwidgets_extfileselectiondialog.n    \
    iwidgets_feedback.n iwidgets_fileselectionbox.n             \
    iwidgets_fileselectiondialog.n iwidgets_finddialog.n            \
    iwidgets_hierarchy.n iwidgets_hyperhelp.n iwidgets_labeledframe.n   \
    iwidgets_labeledwidget.n iwidgets_mainwindow.n iwidgets_menubar.n   \
    iwidgets_messagebox.n iwidgets_messagedialog.n iwidgets_notebook.n  \
    iwidgets_optionmenu.n iwidgets_panedwindow.n iwidgets_promptdialog.n    \
    iwidgets_pushbutton.n iwidgets_radiobox.n iwidgets_scopedobject.n   \
    iwidgets_scrolledcanvas.n iwidgets_scrolledframe.n          \
    iwidgets_scrolledhtml.n iwidgets_scrolledlistbox.n          \
    iwidgets_scrolledtext.n iwidgets_selectionbox.n             \
    iwidgets_selectiondialog.n iwidgets_shell.n iwidgets_spindate.n     \
    iwidgets_spinint.n iwidgets_spinner.n iwidgets_spintime.n       \
    iwidgets_tabnotebook.n iwidgets_tabset.n iwidgets_timeentry.n       \
    iwidgets_timefield.n iwidgets_toolbar.n iwidgets_watch.n join.n     \
    keysyms.n label.n labelframe.n lappend.n library.n lindex.n linsert.n   \
    list.n listbox.n llength.n load.n loadTk.n local.n lower.n lrange.n \
    lreplace.n lsearch.n lset.n lsort.n memory.n menu.n menubar.n       \
    menubutton.n message.n messageBox.n msgcat.n namespace.n open.n     \
    option.n optionMenu.n options.n pack-old.n pack.n package.n     \
    packagens.n palette.n panedwindow.n photo.n pid.n pkgMkIndex.n      \
    place.n popup.n proc.n puts.n pwd.n radiobutton.n raise.n re_syntax.n   \
    read.n regexp.n registry.n regsub.n rename.n resource.n return.n    \
    safe.n scale.n scan.n scope.n scrollbar.n seek.n selection.n send.n \
    set.n socket.n source.n spinbox.n split.n string.n subst.n switch.n \
    tcltest.n tclvars.n tell.n text.n time.n tk.n tkerror.n tkvars.n    \
    tkwait.n toplevel.n trace.n unknown.n unset.n update.n uplevel.n    \
    upvar.n usual.n variable.n vwait.n while.n winfo.n wm.n

OPTIONS=    OPTIMIZATION "Try building with optimizations" on

.include <bsd.port.pre.mk>

EXTRA_LIBS= ${PTHREAD_LIBS}

.if !(${ARCH} == i386 || ${ARCH} == amd64 || ${ARCH} == sparc64)
IGNORE=     dumps core on ${ARCH}
.endif

.ifdef WITH_OPTIMIZATION
CONFIGURE_ARGS+=    --disable-debug
.if (${ARCH} == i386 || ${ARCH} == amd64 || ${ARCH} == sparc64)
CONFIGURE_ARGS+=    --enable-optimized
.endif
.endif

post-patch:
    ${REINPLACE_CMD} "s+/usr/X11R6+${X11BASE}+" ${WRKSRC}/configure

pre-install:
    ${CP} ${FILESDIR}/mged.sh ${WRKSRC}
    ${REINPLACE_CMD} -e 's+%%BRLCAD_ROOT%%+${PREFIX}+g;'    \
        ${WRKSRC}/mged.sh

# note that installing outside of PREFIX wigs out package stuff... :/
post-install:
    ${INSTALL_SCRIPT} ${WRKSRC}/mged.sh ${PREFIX}/bin/mged.sh
    ${LN} -s ${PREFIX}/bin/mged.sh ${LOCALBASE}/bin/mged.sh
.if defined(WITH_OPTIMIZATION) && !(${ARCH} == i386 || ${ARCH} == amd64)
    @echo "Optimization does not work here, but we went ahead and turned off debugging"
.endif

.if defined(WITH_OPTIMIZATION) && !(${ARCH} == i386 || ${ARCH} == amd64)
post-build:
    @echo "Optimization does not work here, but we went ahead and turned off debugging"
.endif

.include <bsd.port.post.mk>