Ignore:
Timestamp:
Oct 9, 2015, 12:00:06 PM (9 years ago)
Author:
gah
Message:

first pass on new build

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/1.5/Makefile.in

    r5029 r5906  
    11
    2 bindir          = @bindir@
    3 datadir         = @datadir@
    4 datarootdir     = @datarootdir@
    5 exec_prefix     = @exec_prefix@
    6 includedir      = @includedir@
    7 libdir          = @libdir@
    8 mandir          = @mandir@
    9 prefix          = @prefix@
    10 srcdir          = @srcdir@
    11 
    12 INSTALL         = @INSTALL@
    13 SHELL           = @SHELL@
    14 MKDIR_P         = @MKDIR_P@
    15 RM              = rm -f
    16 VPATH           = $(srcdir)
    17 
    18 build_date      := $(shell date +%Y%m%d)
    19 machine         := $(shell uname -m | sed 's/\ //')
    20 os              := $(shell uname -s)
    21 
    22 pkg_path        := $(shell dirname $(prefix))
    23 pkg_name        := $(shell basename $(prefix))
    24 SVN_VERSION     := $(shell svnversion $(srcdir) | sed 's/Unversioned directory/unknown/')
    25 
    26 rappture_binary_tarfile = rappture-$(os)-$(machine)-$(build_date).tar.gz
    27 rappture_source_tarfile = rappture-src-$(build_date).tar.gz
    28 runtime_source_tarfile = rappture-runtime-src-$(build_date).tar.gz
    29 
    30 runtime_repo = https://nanohub.org/infrastructure/rappture-runtime/svn/trunk
    31 rappture_repo = https://nanohub.org/infrastructure/rappture/svn/trunk
    32 
    33 ENABLE_GUI      = @ENABLE_GUI@
    34 ENABLE_LANG     = @ENABLE_LANG@
    35 HAVE_FFMPEG     = @HAVE_FFMPEG_LIBS@
    36 TARGETS         = src lib
    37 
    38 ifneq ($(ENABLE_LANG),)
    39   TARGETS += lang
     2# ------------------------------------------------------------------------
     3#       Makefile for Rappture
     4# ------------------------------------------------------------------------
     5
     6# ------------------------------------------------------------------------
     7#       C Compiler options
     8# ------------------------------------------------------------------------
     9
     10RAPPTURE_MAJOR_VERSION =        @RAPPTURE_MAJOR_VERSION@
     11RAPPTURE_MINOR_VERSION =        @RAPPTURE_MINOR_VERSION@
     12RAPPTURE_RELEASE_SERIAL =       @RAPPTURE_RELEASE_SERIAL@
     13X_INCLUDES =            @X_INCLUDES@
     14X_LIBRARIES =           @X_LIBRARIES@
     15WORDSIZE =              @WORDSIZE@
     16version = $(RAPPTURE_MAJOR_VERSION).$(RAPPTURE_MINOR_VERSION).$(RAPPTURE_RELEASE_SERIAL)
     17runtime =               $(shell cd ../rappture/runtime; pwd)
     18TAG =                   branches/blt4
     19
     20# ------------------------------------------------------------------------
     21#       Source and targer installation directories
     22# ------------------------------------------------------------------------
     23
     24bindir =                $(exec_prefix)/bin
     25datadir =               @datadir@
     26datarootdir =           @datarootdir@
     27exec_prefix =           @exec_prefix@
     28incdir =                $(prefix)/include
     29includedir =            @includedir@
     30libdir =                @libdir@
     31prefix =                @prefix@
     32scriptdir =             $(exec_prefix)/scripts
     33pkgdir =                $(exec_prefix)/lib
     34srcdir =                $(shell cd @srcdir@; pwd)
     35statsdir =              @STATSDIR@
     36
     37# ------------------------------------------------------------------------
     38#       You don't need to edit anything beyond this point
     39# ------------------------------------------------------------------------
     40
     41INSTALL =               @INSTALL@
     42INSTALL_DATA =          @INSTALL_DATA@
     43DESTDIR = 
     44RANLIB =                @RANLIB@
     45MAKE =                  make
     46SHELL =                 /bin/sh
     47AR =                    ar rc
     48RM =                    rm -f
     49LN_S =                  @LN_S@
     50VPATH =                 $(srcdir)
     51MKDIR_P =               @MKDIR_P@
     52CP =                    /bin/cp
     53
     54WITH_R =                @WITH_R@
     55WITH_JAVA =             @WITH_JAVA@
     56WITH_MATLAB =           @WITH_MATLAB@
     57WITH_MKOCTFILE2 =       @WITH_MKOCTFILE2@
     58WITH_MKOCTFILE3 =       @WITH_MKOCTFILE3@
     59WITH_OCTAVE =           @WITH_OCTAVE@
     60WITH_PERL =             @WITH_PERL@
     61WITH_PYTHON =           @WITH_PYTHON@
     62WITH_RUBY =             @WITH_RUBY@
     63WITH_RUBY_SITELIBDIR =  @WITH_RUBY_SITELIBDIR@
     64WITH_TCL =              @WITH_TCL@
     65WITH_VTK =              @WITH_VTK@
     66
     67common_flags =          --prefix=$(prefix) --exec_prefix=$(exec_prefix)
     68x_flags =
     69ifneq ("$(X_INCLUDES)", )
     70  x_flags += --x-includes=$(X_INCLUDES)
    4071endif
    41 ifneq ($(ENABLE_GUI),)
    42   TARGETS += gui builder tester examples puq
     72ifneq ("$(X_LIBRARIES)", )
     73  x_flags += --x-includes=$(X_LIBRARIES)
    4374endif
    44 ifneq ($(HAVE_FFMPEG),)
    45   TARGETS += video
     75
     76PATH := $(bindir):$(PATH)
     77
     78targets = \
     79        apps blt cmake examples expat expect gui htmlwidget itcl \
     80        itk lang libs optimizer shape sqlitetcl tcl tcllib \
     81        tdom tk tkimg tls video vtk zlib  packages \
     82
     83.PHONY: $(targets)
     84
     85.NOTPARALLEL:
     86
     87all: gui lang apps allpackages
     88
     89allpackages: packages video optimizer
     90
     91update:
     92        for i in $(srcdir)/runtime/*; do \
     93           (cd $$i; svn update; svn status) \
     94        done
     95
     96# Aliases for package directory names.
     97
     98# 1.4 runtime
     99blt = blt2.4z
     100cmake = cmake-2.8.12.2
     101examples = examples
     102expat = expat-2.1.0
     103expect = expect5.45
     104# Doesn't exist in 1.4 runtime
     105freetype = freetype-2.5.3
     106gui = gui
     107htmlwidget = htmlwidget-3a14
     108itcl = itcl3.3
     109itk = itk3.3
     110# Doesn't exist in 1.4 runtime
     111jpeg = jpeg-8d
     112# Doesn't exist in 1.4 runtime
     113libpng = libpng-1.6.15
     114libs = libs
     115# Doesn't exist in 1.4 runtime
     116openssl = openssl-1.0.1j
     117optimizer = optimizer
     118shape = shape0.4
     119sqlitetcl = sqlite-3071502
     120tcl = tcl8.4.19
     121tcllib = tcllib-1.12
     122tdom = tDOM-0.8.2
     123# Doesn't exist in 1.4 runtime
     124tiff = tiff-4.0.3
     125tk = tk8.4.19
     126tkimg = tkimg1.3
     127tls = tls1.6
     128vtk = vtk-6.0.0
     129zlib = zlib
     130lang = lang
     131video = video
     132packages = pkgs
     133apps = apps
     134
     135subdirs = \
     136        $(blt) $(cmake) $(expat) $(expect) \
     137        $(gui) $(htmlwidget) $(itcl) $(itk) $(lang) $(libs)  \
     138        $(optimizer) $(shape) \
     139        $(sqlitetcl) $(tcl) $(tcllib) $(tdom) $(tk) $(tkimg) \
     140        $(tls) $(vtk) $(zlib) $(apps)
     141
     142ifneq ("$(WITH_VTK)", "no")
     143  vtk_timestamp = $(vtk)/timestamp
    46144endif
    47145
    48 .PHONY: all test install clean distclean package distrib runtime-distrib \
    49         $(TARGETS)
    50 
    51 all:
    52         for i in $(TARGETS) ; do \
    53           $(MAKE) -C $$i all || exit 1 ;\
     146clean:
     147        $(clean_apps)
     148        $(clean_blt)
     149        $(clean_cmake)
     150        $(clean_expat)
     151        $(clean_expect)
     152        $(clean_gui)
     153        $(clean_htmlwidget)
     154        $(clean_itcl)
     155        $(clean_itk)
     156        $(clean_lang)
     157        $(clean_libs)
     158        $(clean_optimizer)
     159        $(clean_shape)
     160        $(clean_sqlitetcl)
     161        $(clean_tcl)
     162        $(clean_tcllib)
     163        $(clean_tdom)
     164        $(clean_tk)
     165        $(clean_tkimg)
     166        $(clean_tls)
     167        $(clean_vtk)
     168        $(clean_zlib)
     169
     170# -------------------------------------------------------------------------
     171#  APPS
     172# -------------------------------------------------------------------------
     173
     174apps_flags =    \
     175        --enable-shared \
     176        $(common_flags)
     177
     178apps: $(apps)/timestamp
     179
     180clean-apps:
     181        $(clean_apps)
     182fetch-apps:
     183        $(fetch_apps)
     184configure-apps:
     185        $(configure_apps)
     186build-apps:
     187        $(build_apps)
     188install-apps:
     189        $(install_apps)
     190touch-apps:
     191        $(touch_apps)
     192force-apps: $(gui)/timestamp
     193        + $(clean_apps)
     194        + $(fetch_apps)
     195        + $(configure_apps)
     196        + $(build_apps)
     197        + $(install_apps)
     198        + $(touch_apps)
     199
     200define clean_apps
     201        $(MAKE) -C $(apps) clean
     202endef
     203define fetch_apps
     204endef
     205define configure_apps
     206endef
     207define build_apps
     208        $(MAKE) -C $(apps) all
     209endef
     210define install_apps
     211        $(MAKE) -C $(apps) install
     212endef
     213define touch_apps
     214        touch $(apps)/timestamp
     215endef
     216
     217$(apps)/timestamp: $(gui)/timestamp
     218        + $(clean_apps)
     219        + $(fetch_apps)
     220        + $(configure_apps)
     221        + $(build_apps)
     222        + $(install_apps)
     223        + $(touch_apps)
     224
     225
     226# -------------------------------------------------------------------------
     227#  BLT
     228# -------------------------------------------------------------------------
     229
     230blt_flags =     \
     231                --enable-shared \
     232                $(common_flags)
     233
     234blt: $(blt)/timestamp
     235
     236clean-blt:
     237        $(clean_blt)
     238fetch-blt:
     239        $(fetch_blt)
     240configure-blt:
     241        $(configure_blt)
     242build-blt:
     243        $(build_blt)
     244install-blt:
     245        $(install_blt)
     246touch-blt:
     247        $(touch_blt)
     248force-blt: $(tcl)/timestamp $(tk)/timestamp
     249        + $(clean_blt)
     250        + $(fetch_blt)
     251        + $(configure_blt)
     252        + $(build_blt)
     253        + $(install_blt)
     254        + $(touch_blt)
     255
     256define clean_blt
     257        $(RM) -r $(blt)
     258endef
     259define fetch_blt
     260        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(blt)
     261endef
     262define configure_blt
     263        $(MKDIR_P) $(blt)
     264        cd $(blt); $(runtime)/$(blt)/configure $(blt_flags)
     265endef
     266define build_blt
     267        $(MAKE)  -C $(blt) all
     268endef
     269define install_blt
     270        $(MAKE) -C $(blt) install
     271endef
     272define touch_blt
     273        touch $(blt)/timestamp
     274endef
     275
     276$(blt)/timestamp: $(tcl)/timestamp $(tk)/timestamp
     277        + $(clean_blt)
     278        + $(fetch_blt)
     279        + $(configure_blt)
     280        + $(build_blt)
     281        + $(install_blt)
     282        + $(touch_blt)
     283
     284# -------------------------------------------------------------------------
     285#  CMAKE
     286# -------------------------------------------------------------------------
     287
     288cmake_flags =   \
     289        --prefix=$(prefix)
     290
     291cmake: $(cmake)/timestamp
     292
     293clean-cmake:
     294        $(clean_cmake)
     295fetch-cmake:
     296        $(fetch_cmake)
     297configure-cmake:
     298        $(configure_cmake)
     299build-cmake:
     300        $(build_cmake)
     301install-cmake:
     302        $(install_cmake)
     303touch-cmake:
     304        $(touch_cmake)
     305force-cmake:
     306        + $(clean_cmake)
     307        + $(fetch_cmake)
     308        + $(configure_cmake)
     309        + $(build_cmake)
     310        + $(install_cmake)
     311        + $(touch_cmake)
     312
     313define clean_cmake
     314        $(RM) -r $(cmake)
     315endef
     316define fetch_cmake
     317        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(cmake)
     318endef
     319define configure_cmake
     320        $(MKDIR_P) $(cmake)
     321        cd $(cmake); $(runtime)/$(cmake)/configure $(cmake_flags)
     322endef
     323define build_cmake
     324        $(MAKE)  -C $(cmake) all
     325endef
     326define install_cmake
     327        $(MAKE) -C $(cmake) install
     328endef
     329define touch_cmake
     330        touch $(cmake)/timestamp
     331endef
     332
     333$(cmake)/timestamp:
     334        + $(clean_cmake)
     335        + $(fetch_cmake)
     336        + $(configure_cmake)
     337        + $(build_cmake)
     338        + $(install_cmake)
     339        + $(touch_cmake)
     340
     341# -------------------------------------------------------------------------
     342#  EXAMPLES
     343# -------------------------------------------------------------------------
     344
     345examples_flags =        \
     346        --with-tclsh="$(bindir)/tclsh" \
     347        --enable-shared \
     348        $(common_flags)
     349
     350examples: $(examples)/timestamp
     351
     352clean-examples:
     353        $(clean_examples)
     354fetch-examples:
     355        $(fetch_examples)
     356configure-examples:
     357        $(configure_examples)
     358build-examples:
     359        $(build_examples)
     360install-examples:
     361        $(install_examples)
     362touch-examples:
     363        $(touch_examples)
     364force-examples: $(gui)/timestamp
     365        + $(clean_examples)
     366        + $(fetch_examples)
     367        + $(configure_examples)
     368        + $(build_examples)
     369        + $(install_examples)
     370        + $(touch_examples)
     371
     372define clean_examples
     373        $(MAKE) -C $(examples) clean
     374endef
     375define fetch_examples
     376endef
     377define configure_examples
     378        $(MKDIR_P) $(examples)
     379endef
     380define build_examples
     381        $(MAKE) -C $(examples) all
     382endef
     383define install_examples
     384        $(MAKE) -C $(examples) install
     385endef
     386define touch_examples
     387        touch $(examples)/timestamp
     388endef
     389
     390$(examples)/timestamp: $(gui)/timestamp
     391        + $(clean_examples)
     392        + $(fetch_examples)
     393        + $(configure_examples)
     394        + $(build_examples)
     395        + $(install_examples)
     396        + $(touch_examples)
     397
     398# -------------------------------------------------------------------------
     399#  EXPAT
     400# -------------------------------------------------------------------------
     401
     402expat_flags =   \
     403        --enable-shared \
     404        $(common_flags)
     405
     406expat: $(expat)/timestamp
     407
     408clean-expat:
     409        $(clean_expat)
     410fetch-expat:
     411        $(fetch_expat)
     412configure-expat:
     413        $(configure_expat)
     414build-expat:
     415        $(build_expat)
     416install-expat:
     417        $(install_expat)
     418touch-expat:
     419        $(touch_expat)
     420force-expat:
     421        + $(clean_expat)
     422        + $(fetch_expat)
     423        + $(configure_expat)
     424        + $(build_expat)
     425        + $(install_expat)
     426        + $(touch_expat)
     427
     428define clean_expat
     429        $(RM) -r $(expat)
     430endef
     431define fetch_expat
     432        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(expat)
     433endef
     434define configure_expat
     435        $(MKDIR_P) $(expat)
     436        cd $(expat); $(runtime)/$(expat)/configure $(expat_flags)
     437endef
     438define build_expat
     439        $(MAKE)  -C $(expat) all
     440endef
     441define install_expat
     442        $(MAKE) -C $(expat) install
     443endef
     444define touch_expat
     445        touch $(expat)/timestamp
     446endef
     447
     448$(expat)/timestamp:
     449        + $(clean_expat)
     450        + $(fetch_expat)
     451        + $(configure_expat)
     452        + $(build_expat)
     453        + $(install_expat)
     454        + $(touch_expat)
     455
     456# -------------------------------------------------------------------------
     457#  EXPECT
     458# -------------------------------------------------------------------------
     459
     460expect_flags =  \
     461        --enable-shared \
     462        --enable-64bit \
     463        --with-tcl=$(libdir) \
     464        --with-tclinclude=$(incdir) \
     465        $(common_flags)
     466
     467expect: $(expect)/timestamp
     468
     469clean-expect:
     470        $(clean_expect)
     471fetch-expect:
     472        $(fetch_expect)
     473configure-expect:
     474        $(configure_expect)
     475build-expect:
     476        $(build_expect)
     477install-expect:
     478        $(install_expect)
     479touch-expect:
     480        $(touch_expect)
     481force-expect: $(tcl)/timestamp $(tk)/timestamp
     482        + $(clean_expect)
     483        + $(fetch_expect)
     484        + $(configure_expect)
     485        + $(build_expect)
     486        + $(install_expect)
     487        + $(touch_expect)
     488
     489define clean_expect
     490        $(RM) -r $(expect)
     491endef
     492define fetch_expect
     493        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(expect)
     494endef
     495define configure_expect
     496        $(MKDIR_P) $(expect)
     497        cd $(expect); $(runtime)/$(expect)/configure $(expect_flags)
     498endef
     499define build_expect
     500        $(MAKE)  -C $(expect) all
     501endef
     502define install_expect
     503        $(MAKE) -C $(expect) install
     504endef
     505define touch_expect
     506        touch $(expect)/timestamp
     507endef
     508
     509$(expect)/timestamp: $(tcl)/timestamp $(tk)/timestamp
     510        + $(clean_expect)
     511        + $(fetch_expect)
     512        + $(configure_expect)
     513        + $(build_expect)
     514        + $(install_expect)
     515        + $(touch_expect)
     516
     517# -------------------------------------------------------------------------
     518#  GUI
     519# -------------------------------------------------------------------------
     520
     521gui_flags =     \
     522        $(common_flags)
     523
     524gui: $(gui)/timestamp
     525
     526clean-gui:
     527        $(clean_gui)
     528fetch-gui:
     529        $(fetch_gui)
     530configure-gui:
     531        $(configure_gui)
     532build-gui:
     533        $(build_gui)
     534install-gui:
     535        $(install_gui)
     536touch-gui:
     537        $(touch_gui)
     538force-gui: $(libs)/timestamp \
     539                  $(blt)/timestamp \
     540                  $(itk)/timestamp \
     541                  $(htmlwidget)/timestamp \
     542                  $(shape)/timestamp \
     543                  $(sqlitetcl)/timestamp \
     544                  $(vtk_timestamp)
     545        + $(clean_gui)
     546        + $(fetch_gui)
     547        + $(configure_gui)
     548        + $(build_gui)
     549        + $(install_gui)
     550        + $(touch_gui)
     551
     552define clean_gui
     553        $(RM) -r $(gui)
     554endef
     555define fetch_gui
     556endef
     557define configure_gui
     558        $(MKDIR_P) $(gui)
     559        cd $(gui); $(srcdir)/$(gui)/configure $(gui_flags)
     560endef
     561define build_gui
     562        $(MAKE) -C $(gui) all
     563endef
     564define install_gui
     565        $(MAKE) -C $(gui) install
     566endef
     567define touch_gui
     568        touch $(gui)/timestamp
     569endef
     570
     571$(gui)/timestamp: $(libs)/timestamp \
     572                  $(blt)/timestamp \
     573                  $(itk)/timestamp \
     574                  $(htmlwidget)/timestamp \
     575                  $(shape)/timestamp \
     576                  $(tdom)/timestamp \
     577                  $(tcllib)/timestamp \
     578                  $(tls)/timestamp \
     579                  $(tkimg)/timestamp \
     580                  $(sqlitetcl)/timestamp \
     581                  $(vtk_timestamp)
     582        + $(clean_gui)
     583        + $(fetch_gui)
     584        + $(configure_gui)
     585        + $(build_gui)
     586        + $(install_gui)
     587        + $(touch_gui)
     588
     589# -------------------------------------------------------------------------
     590#  HTMLWIDGET
     591# -------------------------------------------------------------------------
     592
     593htmlwidget_flags = \
     594        --enable-shared \
     595        $(common_flags)
     596
     597htmlwidget: $(htmlwidget)/timestamp
     598
     599clean-htmlwidget:
     600        $(clean_htmlwidget)
     601fetch-htmlwidget:
     602        $(fetch_htmlwidget)
     603configure-htmlwidget:
     604        $(configure_htmlwidget)
     605build-htmlwidget:
     606        $(build_htmlwidget)
     607install-htmlwidget:
     608        $(install_htmlwidget)
     609touch-htmlwidget:
     610        $(touch_htmlwidget)
     611force-htmlwidget: $(tk)/timestamp
     612        + $(clean_htmlwidget)
     613        + $(fetch_htmlwidget)
     614        + $(configure_htmlwidget)
     615        + $(build_htmlwidget)
     616        + $(install_htmlwidget)
     617        + $(touch_htmlwidget)
     618
     619define clean_htmlwidget
     620        $(RM) -r $(htmlwidget)
     621endef
     622define fetch_htmlwidget
     623        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(htmlwidget)
     624endef
     625define configure_htmlwidget
     626        $(MKDIR_P) $(htmlwidget)
     627        cd $(htmlwidget); $(runtime)/$(htmlwidget)/configure $(htmlwidget_flags)
     628endef
     629define build_htmlwidget
     630        $(MAKE) -C $(htmlwidget) all
     631endef
     632define install_htmlwidget
     633        $(MAKE) -C $(htmlwidget) install
     634endef
     635define touch_htmlwidget
     636        touch $(htmlwidget)/timestamp
     637endef
     638
     639$(htmlwidget)/timestamp: $(tk)/timestamp
     640        + $(clean_htmlwidget)
     641        + $(fetch_htmlwidget)
     642        + $(configure_htmlwidget)
     643        + $(build_htmlwidget)
     644        + $(install_htmlwidget)
     645        + $(touch_htmlwidget)
     646
     647# -------------------------------------------------------------------------
     648#  ITCL
     649# -------------------------------------------------------------------------
     650
     651itcl_flags =    \
     652        --enable-shared \
     653        $(common_flags)
     654
     655itcl: $(itcl)/timestamp
     656
     657clean-itcl:
     658        $(clean_itcl)
     659fetch-itcl:
     660        $(fetch_itcl)
     661configure-itcl:
     662        $(configure_itcl)
     663build-itcl:
     664        $(build_itcl)
     665install-itcl:
     666        $(install_itcl)
     667touch-itcl:
     668        $(touch_itcl)
     669force-itcl:
     670        + $(clean_itcl)
     671        + $(fetch_itcl)
     672        + $(configure_itcl)
     673        + $(build_itcl)
     674        + $(install_itcl)
     675        + $(touch_itcl)
     676
     677define clean_itcl
     678        $(RM) -r $(itcl)
     679endef
     680define fetch_itcl
     681        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(itcl)
     682endef
     683define configure_itcl
     684        $(MKDIR_P) $(itcl)
     685        cd $(itcl); $(runtime)/$(itcl)/configure $(itcl_flags)
     686endef
     687define build_itcl
     688        $(MAKE)  -C $(itcl) all
     689endef
     690define install_itcl
     691        $(MAKE) -C $(itcl) install
     692endef
     693define touch_itcl
     694        touch $(itcl)/timestamp
     695endef
     696
     697$(itcl)/timestamp: $(tcl)/timestamp
     698        + $(clean_itcl)
     699        + $(fetch_itcl)
     700        + $(configure_itcl)
     701        + $(build_itcl)
     702        + $(install_itcl)
     703        + $(touch_itcl)
     704
     705# -------------------------------------------------------------------------
     706#  ITK
     707# -------------------------------------------------------------------------
     708
     709itk_flags =     \
     710        --enable-shared \
     711        $(common_flags)
     712
     713itk: $(itk)/timestamp
     714
     715clean-itk:
     716        $(clean_itk)
     717fetch-itk:
     718        $(fetch_itk)
     719configure-itk:
     720        $(configure_itk)
     721build-itk:
     722        $(build_itk)
     723install-itk:
     724        $(install_itk)
     725touch-itk:
     726        $(touch_itk)
     727force-itk: $(itcl)/timestamp $(tk)/timestamp
     728        + $(clean_itk)
     729        + $(fetch_itk)
     730        + $(configure_itk)
     731        + $(build_itk)
     732        + $(install_itk)
     733        + $(touch_itk)
     734
     735define clean_itk
     736        $(RM) -r $(itk)
     737endef
     738define fetch_itk
     739        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(itk)
     740endef
     741define configure_itk
     742        $(MKDIR_P) $(itk)
     743        cd $(itk); $(runtime)/$(itk)/configure $(itk_flags)
     744endef
     745define build_itk
     746        $(MAKE) -C $(itk) all
     747endef
     748define install_itk
     749        $(MAKE) -C $(itk) install
     750endef
     751define touch_itk
     752        touch $(itk)/timestamp
     753endef
     754
     755$(itk)/timestamp: $(itcl)/timestamp $(tk)/timestamp
     756        + $(clean_itk)
     757        + $(fetch_itk)
     758        + $(configure_itk)
     759        + $(build_itk)
     760        + $(install_itk)
     761        + $(touch_itk)
     762
     763# -------------------------------------------------------------------------
     764#  LANG
     765# -------------------------------------------------------------------------
     766
     767lang_flags =    \
     768        --enable-shared \
     769        $(common_flags) \
     770        --with-R=${WITH_R} \
     771        --with-java=${WITH_JAVA} \
     772        --with-matlab=${WITH_MATLAB} \
     773        --with-mkoctfile2=${WITH_MKOCTFILE2} \
     774        --with-mkoctfile3=${WITH_MKOCTFILE3} \
     775        --with-octave=${WITH_OCTAVE} \
     776        --with-perl=${WITH_PERL} \
     777        --with-python=${WITH_PYTHON} \
     778        --with-ruby=${WITH_RUBY} \
     779        --with-ruby_sitelibdir=${WITH_RUBY_SITELIBDIR}
     780
     781lang: $(lang)/timestamp
     782
     783clean-lang:
     784        $(clean_lang)
     785fetch-lang:
     786        $(fetch_lang)
     787configure-lang:
     788        $(configure_lang)
     789build-lang:
     790        $(build_lang)
     791install-lang:
     792        $(install_lang)
     793touch-lang:
     794        $(touch_lang)
     795force-lang: $(gui)/timestamp
     796        + $(clean_lang)
     797        + $(fetch_lang)
     798        + $(configure_lang)
     799        + $(build_lang)
     800        + $(install_lang)
     801        + $(touch_lang)
     802
     803define clean_lang
     804        $(RM) -r $(lang)
     805endef
     806define fetch_lang
     807endef
     808define configure_lang
     809        $(MKDIR_P) $(lang)
     810        cd $(lang); $(srcdir)/$(lang)/configure $(lang_flags)
     811endef
     812define build_lang
     813        $(MAKE) -C $(lang) all
     814endef
     815define install_lang
     816        $(MAKE) -C $(lang) install
     817endef
     818define touch_lang
     819        touch $(lang)/timestamp
     820endef
     821
     822$(lang)/timestamp: $(libs)/timestamp  $(tcl)/timestamp $(itcl)/timestamp
     823        + $(clean_lang)
     824        + $(fetch_lang)
     825        + $(configure_lang)
     826        + $(build_lang)
     827        + $(install_lang)
     828        + $(touch_lang)
     829
     830
     831# -------------------------------------------------------------------------
     832#  LIB
     833# -------------------------------------------------------------------------
     834
     835libs_flags =    \
     836        --enable-shared \
     837        $(common_flags)
     838
     839libs: $(libs)/timestamp
     840
     841clean-libs:
     842        $(clean_libs)
     843fetch-libs:
     844        $(fetch_libs)
     845configure-libs:
     846        $(configure_libs)
     847build-libs:
     848        $(build_libs)
     849install-libs:
     850        $(install_libs)
     851touch-libs:
     852        $(touch_libs)
     853force-libs:
     854        + $(clean_libs)
     855        + $(fetch_libs)
     856        + $(configure_libs)
     857        + $(build_libs)
     858        + $(install_libs)
     859        + $(touch_libs)
     860
     861define clean_libs
     862        $(MAKE) -C $(libs) clean
     863        $(RM) $(libs)/timestamp
     864endef
     865define fetch_libs
     866endef
     867define configure_libs
     868endef
     869define build_libs
     870        $(MAKE) -C $(libs) all
     871endef
     872define install_libs
     873        $(MAKE) -C $(libs) install
     874        $(MKDIR_P) $(libdir)
     875        $(INSTALL) -m 0444 rapptureConfig.sh $(libdir)
     876endef
     877define touch_libs
     878        touch $(libs)/timestamp
     879endef
     880
     881$(libs)/timestamp:
     882        + $(clean_libs)
     883        + $(fetch_libs)
     884        + $(configure_libs)
     885        + $(build_libs)
     886        + $(install_libs)
     887        + $(touch_libs)
     888
     889# -------------------------------------------------------------------------
     890#  OPTIMIZER
     891# -------------------------------------------------------------------------
     892
     893optimizer_flags =       \
     894        --with-tclsh="$(bindir)/tclsh8.5" \
     895        --enable-shared \
     896        --disable-threads \
     897        $(common_flags)
     898
     899optimizer: $(optimizer)/timestamp
     900
     901clean-optimizer:
     902        $(clean_optimizer)
     903fetch-optimizer:
     904        $(fetch_optimizer)
     905configure-optimizer:
     906        $(configure_optimizer)
     907build-optimizer:
     908        $(build_optimizer)
     909install-optimizer:
     910        $(install_optimizer)
     911touch-optimizer:
     912        $(touch_optimizer)
     913force-optimizer: $(gui)/timestamp
     914        + $(clean_optimizer)
     915        + $(fetch_optimizer)
     916        + $(configure_optimizer)
     917        + $(build_optimizer)
     918        + $(install_optimizer)
     919        + $(touch_optimizer)
     920
     921define clean_optimizer
     922        $(RM) -r $(optimizer)
     923endef
     924define fetch_optimizer
     925endef
     926define configure_optimizer
     927        $(MKDIR_P) $(optimizer)
     928        cd $(optimizer); $(srcdir)/pkgs/$(optimizer)/configure $(optimizer_flags)
     929endef
     930define build_optimizer
     931        $(MAKE) -C $(optimizer) all
     932endef
     933define install_optimizer
     934        $(MAKE) -C $(optimizer) install
     935endef
     936define touch_optimizer
     937        touch $(optimizer)/timestamp
     938endef
     939
     940$(optimizer)/timestamp: $(gui)/timestamp
     941        + $(clean_optimizer)
     942        + $(fetch_optimizer)
     943        + $(configure_optimizer)
     944        + $(build_optimizer)
     945        + $(install_optimizer)
     946        + $(touch_optimizer)
     947
     948
     949# -------------------------------------------------------------------------
     950#  PACKAGES
     951# -------------------------------------------------------------------------
     952
     953packages_flags =        \
     954        $(common_flags)
     955
     956packages: $(packages)/timestamp
     957
     958clean-packages:
     959        $(clean_packages)
     960fetch-packages:
     961        $(fetch_packages)
     962configure-packages:
     963        $(configure_packages)
     964build-packages:
     965        $(build_packages)
     966install-packages:
     967        $(install_packages)
     968touch-packages:
     969        $(touch_packages)
     970force-packages: $(gui)/timestamp
     971        + $(clean_packages)
     972        + $(fetch_packages)
     973        + $(configure_packages)
     974        + $(build_packages)
     975        + $(install_packages)
     976        + $(touch_packages)
     977
     978define clean_packages
     979        $(RM) -r $(packages)
     980endef
     981define fetch_packages
     982endef
     983define configure_packages
     984        $(MKDIR_P) $(packages)
     985        cd $(packages); $(srcdir)/$(packages)/configure $(packages_flags)
     986endef
     987define build_packages
     988        $(MAKE) -C $(packages) all
     989endef
     990define install_packages
     991        $(MAKE) -C $(packages) install
     992endef
     993define touch_packages
     994        touch $(packages)/timestamp
     995endef
     996
     997$(packages)/timestamp: $(gui)/timestamp
     998        + $(clean_packages)
     999        + $(fetch_packages)
     1000        + $(configure_packages)
     1001        + $(build_packages)
     1002        + $(install_packages)
     1003        + $(touch_packages)
     1004
     1005# -------------------------------------------------------------------------
     1006#  SHAPE
     1007# -------------------------------------------------------------------------
     1008
     1009shape_flags =   \
     1010        --enable-shared \
     1011        --with-tclconf=$(libdir) \
     1012        --with-tkconf=$(libdir) \
     1013        $(common_flags)
     1014
     1015shape: $(shape)/timestamp
     1016
     1017clean-shape:
     1018        $(clean_shape)
     1019fetch-shape:
     1020        $(fetch_shape)
     1021configure-shape:
     1022        $(configure_shape)
     1023build-shape:
     1024        $(build_shape)
     1025install-shape:
     1026        $(install_shape)
     1027touch-shape:
     1028        $(touch_shape)
     1029force-shape: $(tk)/timestamp
     1030        + $(clean_shape)
     1031        + $(fetch_shape)
     1032        + $(configure_shape)
     1033        + $(build_shape)
     1034        + $(install_shape)
     1035        + $(touch_shape)
     1036
     1037define clean_shape
     1038        $(RM) -r $(shape)
     1039endef
     1040define fetch_shape
     1041        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(shape)
     1042endef
     1043define configure_shape
     1044        $(MKDIR_P) $(shape)
     1045        cd $(shape); $(runtime)/$(shape)/unix/configure $(shape_flags)
     1046endef
     1047define build_shape
     1048        $(MAKE) -C $(shape) all
     1049endef
     1050define install_shape
     1051        $(MAKE) -C $(shape) install
     1052endef
     1053define touch_shape
     1054        touch $(shape)/timestamp
     1055endef
     1056
     1057$(shape)/timestamp: $(tk)/timestamp
     1058        + $(clean_shape)
     1059        + $(fetch_shape)
     1060        + $(configure_shape)
     1061        + $(build_shape)
     1062        + $(install_shape)
     1063        + $(touch_shape)
     1064
     1065# -------------------------------------------------------------------------
     1066#  SQLITETCL
     1067# -------------------------------------------------------------------------
     1068
     1069sqlitetcl_flags = \
     1070        --enable-shared \
     1071        $(common_flags)
     1072
     1073sqlitetcl: $(sqlitetcl)/timestamp
     1074
     1075clean-sqlitetcl:
     1076        $(clean_sqlitetcl)
     1077fetch-sqlitetcl:
     1078        $(fetch_sqlitetcl)
     1079configure-sqlitetcl:
     1080        $(configure_sqlitetcl)
     1081build-sqlitetcl:
     1082        $(build_sqlitetcl)
     1083install-sqlitetcl:
     1084        $(install_sqlitetcl)
     1085touch-sqlitetcl:
     1086        $(touch_sqlitetcl)
     1087force-sqlitetcl: $(tcl)/timestamp
     1088        + $(clean_sqlitetcl)
     1089        + $(fetch_sqlitetcl)
     1090        + $(configure_sqlitetcl)
     1091        + $(build_sqlitetcl)
     1092        + $(install_sqlitetcl)
     1093        + $(touch_sqlitetcl)
     1094
     1095define clean_sqlitetcl
     1096        $(RM) -r $(sqlitetcl)
     1097endef
     1098define fetch_sqlitetcl
     1099        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(sqlitetcl)
     1100endef
     1101define configure_sqlitetcl
     1102        $(MKDIR_P) $(sqlitetcl)
     1103        cd $(sqlitetcl); $(runtime)/$(sqlitetcl)/tea/configure $(sqlitetcl_flags)
     1104endef
     1105define build_sqlitetcl
     1106        $(MAKE) -C $(sqlitetcl) all
     1107endef
     1108define install_sqlitetcl
     1109        $(MAKE) -C $(sqlitetcl) install
     1110endef
     1111define touch_sqlitetcl
     1112        touch $(sqlitetcl)/timestamp
     1113endef
     1114
     1115$(sqlitetcl)/timestamp: $(tcl)/timestamp
     1116        + $(clean_sqlitetcl)
     1117        + $(fetch_sqlitetcl)
     1118        + $(configure_sqlitetcl)
     1119        + $(build_sqlitetcl)
     1120        + $(install_sqlitetcl)
     1121        + $(touch_sqlitetcl)
     1122
     1123# -------------------------------------------------------------------------
     1124#  TCL
     1125# -------------------------------------------------------------------------
     1126
     1127tcl_flags =     \
     1128        --enable-shared \
     1129        --disable-threads \
     1130        $(common_flags)
     1131
     1132tcl: $(tcl)/timestamp
     1133
     1134clean-tcl:
     1135        $(clean_tcl)
     1136fetch-tcl:
     1137        $(fetch_tcl)
     1138configure-tcl:
     1139        $(configure_tcl)
     1140build-tcl:
     1141        $(build_tcl)
     1142install-tcl:
     1143        $(install_tcl)
     1144touch-tcl:
     1145        $(touch_tcl)
     1146force-tcl:
     1147        + $(clean_tcl)
     1148        + $(fetch_tcl)
     1149        + $(configure_tcl)
     1150        + $(build_tcl)
     1151        + $(install_tcl)
     1152        + $(touch_tcl)
     1153
     1154define fetch_tcl
     1155        sh $(srcdir)/fetch.sh $(TAG) $(srcdir) $(tcl)
     1156endef
     1157define clean_tcl
     1158        $(RM) -r $(tcl)
     1159endef
     1160define fetch_tcl
     1161        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(tcl)
     1162endef
     1163define configure_tcl
     1164        $(MKDIR_P) $(tcl)
     1165        cd $(tcl); $(srcdir)/runtime/$(tcl)/unix/configure $(tcl_flags)
     1166endef
     1167define build_tcl
     1168        $(MAKE)  -C $(tcl) all
     1169endef
     1170define install_tcl
     1171        $(MAKE) -C $(tcl) install
     1172        $(RM) $(bindir)/tclsh
     1173        (. ${libdir}/tclConfig.sh ; cd $(bindir); $(LN_S) tclsh$${TCL_VERSION} tclsh)
     1174endef
     1175define touch_tcl
     1176        touch $(tcl)/timestamp
     1177endef
     1178
     1179$(tcl)/timestamp:
     1180        + $(clean_tcl)
     1181        + $(fetch_tcl)
     1182        + $(configure_tcl)
     1183        + $(build_tcl)
     1184        + $(install_tcl)
     1185        + $(touch_tcl)
     1186
     1187# -------------------------------------------------------------------------
     1188#  TCLLIB
     1189# -------------------------------------------------------------------------
     1190
     1191tcllib_flags =  \
     1192        --enable-shared \
     1193        $(common_flags)
     1194
     1195tcllib: $(tcllib)/timestamp
     1196
     1197clean-tcllib:
     1198        $(clean_tcllib)
     1199fetch-tcllib:
     1200        $(fetch_tcllib)
     1201configure-tcllib:
     1202        $(configure_tcllib)
     1203build-tcllib:
     1204        $(build_tcllib)
     1205install-tcllib:
     1206        $(install_tcllib)
     1207touch-tcllib:
     1208        $(touch_tcllib)
     1209force-tcllib: $(tcl)/timestamp
     1210        + $(clean_tcllib)
     1211        + $(fetch_tcllib)
     1212        + $(configure_tcllib)
     1213        + $(build_tcllib)
     1214        + $(install_tcllib)
     1215        + $(touch_tcllib)
     1216
     1217define clean_tcllib
     1218        $(RM) -r $(tcllib)
     1219endef
     1220define fetch_tcllib
     1221        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(tcllib)
     1222endef
     1223define configure_tcllib
     1224        $(MKDIR_P) $(tcllib)
     1225        cd $(tcllib); $(runtime)/$(tcllib)/configure $(tcllib_flags)
     1226endef
     1227define build_tcllib
     1228        $(MAKE) -C $(tcllib) all
     1229endef
     1230define install_tcllib
     1231        $(MAKE) -C $(tcllib) install
     1232endef
     1233define touch_tcllib
     1234        touch $(tcllib)/timestamp
     1235endef
     1236
     1237$(tcllib)/timestamp: $(tcl)/timestamp
     1238        + $(clean_tcllib)
     1239        + $(fetch_tcllib)
     1240        + $(configure_tcllib)
     1241        + $(build_tcllib)
     1242        + $(install_tcllib)
     1243        + $(touch_tcllib)
     1244
     1245# -------------------------------------------------------------------------
     1246#  TDOM
     1247# -------------------------------------------------------------------------
     1248
     1249tdom_flags =    \
     1250        --enable-shared \
     1251        $(common_flags)
     1252
     1253tdom: $(tdom)/timestamp
     1254
     1255clean-tdom:
     1256        $(clean_tdom)
     1257fetch-tdom:
     1258        $(fetch_tdom)
     1259configure-tdom:
     1260        $(configure_tdom)
     1261build-tdom:
     1262        $(build_tdom)
     1263install-tdom:
     1264        $(install_tdom)
     1265touch-tdom:
     1266        $(touch_tdom)
     1267force-tdom: $(tcl)/timestamp
     1268        + $(clean_tdom)
     1269        + $(fetch_tdom)
     1270        + $(configure_tdom)
     1271        + $(build_tdom)
     1272        + $(install_tdom)
     1273        + $(touch_tdom)
     1274
     1275define clean_tdom
     1276        $(RM) -r $(tdom)
     1277endef
     1278define fetch_tdom
     1279        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(tdom)
     1280endef
     1281define configure_tdom
     1282        $(MKDIR_P) $(tdom)
     1283        cd $(tdom); $(runtime)/$(tdom)/configure $(tdom_flags)
     1284endef
     1285define build_tdom
     1286        $(MAKE) -C $(tdom) all
     1287endef
     1288define install_tdom
     1289        $(MAKE) -C $(tdom) install
     1290endef
     1291define touch_tdom
     1292        touch $(tdom)/timestamp
     1293endef
     1294
     1295$(tdom)/timestamp: $(tcl)/timestamp
     1296        + $(clean_tdom)
     1297        + $(fetch_tdom)
     1298        + $(configure_tdom)
     1299        + $(build_tdom)
     1300        + $(install_tdom)
     1301        + $(touch_tdom)
     1302
     1303# -------------------------------------------------------------------------
     1304#  TK
     1305# -------------------------------------------------------------------------
     1306
     1307tk_flags =      \
     1308        --enable-shared \
     1309        --disable-threads \
     1310        $(common_flags)
     1311
     1312tk: $(tk)/timestamp
     1313
     1314clean-tk:
     1315        $(clean_tk)
     1316fetch-tk:
     1317        $(fetch_tk)
     1318configure-tk:
     1319        $(configure_tk)
     1320build-tk:
     1321        $(build_tk)
     1322install-tk:
     1323        $(install_tk)
     1324touch-tk:
     1325        $(touch_tk)
     1326force-tk: $(tcl)/timestamp
     1327        + $(clean_tk)
     1328        + $(fetch_tk)
     1329        + $(configure_tk)
     1330        + $(build_tk)
     1331        + $(install_tk)
     1332        + $(touch_tk)
     1333
     1334define clean_tk
     1335        $(RM) -r $(tk)
     1336endef
     1337define fetch_tk
     1338        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(tk)
     1339endef
     1340define configure_tk
     1341        $(MKDIR_P) $(tk)
     1342        cd $(tk); $(runtime)/$(tk)/unix/configure $(tk_flags)
     1343endef
     1344define build_tk
     1345        $(MAKE)  -C $(tk) all
     1346endef
     1347define install_tk
     1348        $(MAKE) -C $(tk) install
     1349        $(RM) $(bindir)/wish
     1350        (. $(libdir)/tkConfig.sh ; cd $(bindir); $(LN_S) wish$${TK_VERSION} wish)
     1351endef
     1352define touch_tk
     1353        touch $(tk)/timestamp
     1354endef
     1355
     1356$(tk)/timestamp: $(tcl)/timestamp
     1357        + $(clean_tk)
     1358        + $(fetch_tk)
     1359        + $(configure_tk)
     1360        + $(build_tk)
     1361        + $(install_tk)
     1362        + $(touch_tk)
     1363
     1364# -------------------------------------------------------------------------
     1365#  TKING
     1366# -------------------------------------------------------------------------
     1367
     1368tkimg_flags =   \
     1369        --enable-shared \
     1370        $(common_flags)
     1371
     1372tkimg: $(tkimg)/timestamp
     1373
     1374clean-tkimg:
     1375        $(clean_tkimg)
     1376fetch-tkimg:
     1377        $(fetch_tkimg)
     1378configure-tkimg:
     1379        $(configure_tkimg)
     1380build-tkimg:
     1381        $(build_tkimg)
     1382install-tkimg:
     1383        $(install_tkimg)
     1384touch-tkimg:
     1385        $(touch_tkimg)
     1386force-tkimg: $(tk)/timestamp
     1387        + $(clean_tkimg)
     1388        + $(fetch_tkimg)
     1389        + $(configure_tkimg)
     1390        + $(build_tkimg)
     1391        + $(install_tkimg)
     1392        + $(touch_tkimg)
     1393
     1394define clean_tkimg
     1395        $(RM) -r $(tkimg)
     1396endef
     1397define fetch_tkimg
     1398        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(tkimg)
     1399endef
     1400define configure_tkimg
     1401        $(MKDIR_P) $(tkimg)
     1402        cd $(tkimg); $(runtime)/$(tkimg)/configure $(tkimg_flags)
     1403endef
     1404define build_tkimg
     1405        $(MAKE) -C $(tkimg) all
     1406endef
     1407define install_tkimg
     1408        $(MAKE) -C $(tkimg) install
     1409endef
     1410define touch_tkimg
     1411        touch $(tkimg)/timestamp
     1412endef
     1413
     1414$(tkimg)/timestamp: $(tk)/timestamp
     1415        + $(clean_tkimg)
     1416        + $(fetch_tkimg)
     1417        + $(configure_tkimg)
     1418        + $(build_tkimg)
     1419        + $(install_tkimg)
     1420        + $(touch_tkimg)
     1421
     1422# -------------------------------------------------------------------------
     1423#  TLS
     1424# -------------------------------------------------------------------------
     1425
     1426tls_flags =     \
     1427        --enable-shared \
     1428        $(common_flags)
     1429
     1430tls: $(tls)/timestamp
     1431
     1432clean-tls:
     1433        $(clean_tls)
     1434fetch-tls:
     1435        $(fetch_tls)
     1436configure-tls:
     1437        $(configure_tls)
     1438build-tls:
     1439        $(build_tls)
     1440install-tls:
     1441        $(install_tls)
     1442touch-tls:
     1443        $(touch_tls)
     1444force-tls: $(tcl)/timestamp
     1445        + $(clean_tls)
     1446        + $(fetch_tls)
     1447        + $(configure_tls)
     1448        + $(build_tls)
     1449        + $(install_tls)
     1450        + $(touch_tls)
     1451
     1452define clean_tls
     1453        $(RM) -r $(tls)
     1454endef
     1455define fetch_tls
     1456        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(tls)
     1457endef
     1458define configure_tls
     1459        $(MKDIR_P) $(tls)
     1460        cd $(tls); $(runtime)/$(tls)/configure $(tls_flags)
     1461endef
     1462define build_tls
     1463        $(MAKE) -C $(tls) all
     1464endef
     1465define install_tls
     1466        $(MAKE) -C $(tls) install
     1467endef
     1468define touch_tls
     1469        touch $(tls)/timestamp
     1470endef
     1471
     1472$(tls)/timestamp: $(tcl)/timestamp
     1473        + $(clean_tls)
     1474        + $(fetch_tls)
     1475        + $(configure_tls)
     1476        + $(build_tls)
     1477        + $(install_tls)
     1478        + $(touch_tls)
     1479
     1480# -------------------------------------------------------------------------
     1481#  VIDEO
     1482# -------------------------------------------------------------------------
     1483
     1484video_flags =   \
     1485        --with-tclsh="$(bindir)/tclsh" \
     1486        --enable-shared \
     1487        $(common_flags)
     1488
     1489video: $(video)/timestamp
     1490
     1491clean-video:
     1492        $(clean_video)
     1493fetch-video:
     1494        $(fetch_video)
     1495configure-video:
     1496        $(configure_video)
     1497build-video:
     1498        $(build_video)
     1499install-video:
     1500        $(install_video)
     1501touch-video:
     1502        $(touch_video)
     1503force-video: #$(gui)/timestamp
     1504        + $(clean_video)
     1505        + $(fetch_video)
     1506        + $(configure_video)
     1507        + $(build_video)
     1508        + $(install_video)
     1509        + $(touch_video)
     1510
     1511define clean_video
     1512        $(RM) -r $(video)
     1513endef
     1514define fetch_video
     1515endef
     1516define configure_video
     1517        $(MKDIR_P) $(video)
     1518        cd $(video); $(srcdir)/pkgs/$(video)/configure $(video_flags)
     1519endef
     1520define build_video
     1521        $(MAKE) -C $(video) all
     1522endef
     1523define install_video
     1524        $(MAKE) -C $(video) install
     1525endef
     1526define touch_video
     1527        touch $(video)/timestamp
     1528endef
     1529
     1530$(video)/timestamp: $(gui)/timestamp
     1531        + $(clean_video)
     1532        + $(fetch_video)
     1533        + $(configure_video)
     1534        + $(build_video)
     1535        + $(install_video)
     1536        + $(touch_video)
     1537
     1538# -------------------------------------------------------------------------
     1539#  VTK
     1540# -------------------------------------------------------------------------
     1541
     1542vtk_flags =     \
     1543        $(common_flags)
     1544
     1545vtk: $(vtk)/timestamp
     1546
     1547clean-vtk:
     1548        $(clean_vtk)
     1549fetch-vtk:
     1550        $(fetch_vtk)
     1551configure-vtk:
     1552        $(configure_vtk)
     1553build-vtk:
     1554        $(build_vtk)
     1555install-vtk:
     1556        $(install_vtk)
     1557touch-vtk:
     1558        $(touch_vtk)
     1559force-vtk: $(cmake)/timestamp $(tcl)/timestamp $(tk)/timestamp
     1560        + $(clean_vtk)
     1561        + $(fetch_vtk)
     1562        + $(configure_vtk)
     1563        + $(build_vtk)
     1564        + $(install_vtk)
     1565        + $(touch_vtk)
     1566
     1567define clean_vtk
     1568        $(RM) -r $(vtk)
     1569endef
     1570define fetch_vtk
     1571        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(vtk)
     1572endef
     1573define configure_vtk
     1574        $(MKDIR_P) $(vtk)
     1575        cd $(vtk); $(runtime)/$(vtk)/configure $(vtk_flags)
     1576endef
     1577define build_vtk
     1578        $(MAKE)  -C $(vtk) all
     1579endef
     1580define install_vtk
     1581        $(MAKE) -C $(vtk) install
     1582        $(INSTALL) -m 0444 $(vtk)/vtkConfig.sh $(libdir)
     1583        $(RM) $(includedir)/vtk
     1584        (. $(libdir)/vtkConfig.sh ; cd $(includedir); $(LN_S) vtk-$${VTK_VERSION} vtk)
     1585        $(RM) $(libdir)/tcltk/vtk
     1586        (. $(libdir)/vtkConfig.sh ; cd $(libdir)/tcltk; $(LN_S) vtk-$${VTK_VERSION} vtk)
     1587endef
     1588define touch_vtk
     1589        touch $(vtk)/timestamp
     1590endef
     1591
     1592$(vtk)/timestamp: $(cmake)/timestamp $(tcl)/timestamp $(tk)/timestamp
     1593        + $(clean_vtk)
     1594        + $(fetch_vtk)
     1595        + $(configure_vtk)
     1596        + $(build_vtk)
     1597        + $(install_vtk)
     1598        + $(touch_vtk)
     1599
     1600# -------------------------------------------------------------------------
     1601#  ZLIB
     1602# -------------------------------------------------------------------------
     1603
     1604zlib_flags =    \
     1605        --enable-shared \
     1606        $(common_flags)
     1607
     1608zlib: $(zlib)/timestamp
     1609
     1610clean-zlib:
     1611        $(clean_zlib)
     1612fetch-zlib:
     1613        $(fetch_zlib)
     1614configure-zlib:
     1615        $(configure_zlib)
     1616build-zlib:
     1617        $(build_zlib)
     1618install-zlib:
     1619        $(install_zlib)
     1620touch-zlib:
     1621        $(touch_zlib)
     1622force-zlib:
     1623        + $(clean_zlib)
     1624        + $(fetch_zlib)
     1625        + $(configure_zlib)
     1626        + $(build_zlib)
     1627        + $(install_zlib)
     1628        + $(touch_zlib)
     1629
     1630define clean_zlib
     1631        $(RM) -r $(zlib)
     1632endef
     1633define fetch_zlib
     1634        sh $(srcdir)/fetch.sh $(TAG) $(runtime) $(zlib)
     1635endef
     1636define configure_zlib
     1637        $(MKDIR_P) $(zlib)
     1638        cd $(zlib); $(runtime)/$(zlib)/configure $(zlib_flags)
     1639endef
     1640define build_zlib
     1641        $(MAKE) -C $(zlib) all
     1642endef
     1643define install_zlib
     1644        $(MAKE) -C $(zlib) install
     1645endef
     1646define touch_zlib
     1647        touch $(zlib)/timestamp
     1648endef
     1649
     1650$(zlib)/timestamp:
     1651        + $(clean_zlib)
     1652        + $(fetch_zlib)
     1653        + $(configure_zlib)
     1654        + $(build_zlib)
     1655        + $(install_zlib)
     1656        + $(touch_zlib)
     1657
     1658
     1659TRASH = \
     1660        ./bin/bltsh30 \
     1661        ./bin/bltwish30 \
     1662        ./bin/dtplite \
     1663        ./bin/flowvis-test \
     1664        ./bin/mapviewer-test \
     1665        ./bin/nanovis-test \
     1666        ./bin/nns \
     1667        ./bin/nnsd \
     1668        ./bin/nnslog \
     1669        ./bin/page \
     1670        ./bin/tcldocstrip \
     1671        ./bin/vtkglyphs-test \
     1672        ./bin/vtkheightmap-test \
     1673        ./bin/vtkisosurface-test \
     1674        ./bin/vtkstreamlines-test \
     1675        ./bin/vtkviewer-test \
     1676        ./bin/vtkvolume-test \
     1677        ./lib/bltConfig.sh \
     1678        ./lib/itclConfig.sh \
     1679        ./lib/jpegtclConfig.sh \
     1680        ./lib/libBltTcl30.so \
     1681        ./lib/libBltTk30.so \
     1682        ./lib/pngtclConfig.sh \
     1683        ./lib/tdomConfig.sh \
     1684        ./lib/tifftclConfig.sh \
     1685        ./lib/tkConfig.sh \
     1686        ./lib/tkimgConfig.sh \
     1687        ./lib/zlibtclConfig.sh \
     1688        ./man \
     1689        ./share
     1690
     1691installdir =    rappture_install
     1692tmpdir =        /tmp/$(installdir)
     1693arch =          $(shell uname -m)
     1694package:
     1695        $(RM) -r $(tmpdir)
     1696        $(MKDIR_P) $(tmpdir)
     1697        tar -C $(DESTDIR)$(exec_prefix) -clf - . | tar -C $(tmpdir) -xpf -
     1698        for i in $(TRASH); do \
     1699           $(RM) -r $(tmpdir)/$$i ; \
    541700        done
    55 
    56 test:
    57         $(MAKE) -C test all
    58 
    59 install:
    60         for i in $(TARGETS) ; do \
    61           $(MAKE) -C $$i install || exit 1 ;\
    62         done
    63 
    64 clean:
    65         for i in $(TARGETS) ; do \
    66           $(MAKE) -C $$i clean || exit 1 ;\
    67         done
    68 
    69 distclean: clean
    70         $(RM) Makefile config.status config.log  *~
    71         for i in $(TARGETS) ; do \
    72           $(MAKE) -C $$i distclean || exit 1 ;\
    73         done
    74 
    75 package:
    76         tar -C $(pkg_path) -czlf $(rappture_binary_tarfile) $(pkg_name)
    77 
    78 distrib:
    79         $(RM) -r exported
    80         $(MKDIR_P) -m 0755 exported
    81         (cd exported; svn export -q $(rappture_repo) rappture)
    82         tar -C exported -czlf $(rappture_source_tarfile) rappture
    83         $(RM) -r exported
    84 
    85 runtime-distrib:
    86         $(RM) -r exported
    87         $(MKDIR_P) -m 0755 exported
    88         (cd exported; svn export -q $(runtime_repo) runtime)
    89         tar -C exported -czlf $(runtime_source_tarfile) runtime
    90         $(RM) -r exported
     1701        $(bindir)/bltsh30 fixrunpaths.tcl $(tmpdir)
     1702        tar -C /tmp -zclf rappture$(version)-linux-$(arch).tar.gz $(installdir)
     1703        $(RM) -r $(tmpdir)
     1704
Note: See TracChangeset for help on using the changeset viewer.