Changeset 75201 for trunk/dports/java


Ignore:
Timestamp:
Jan 18, 2011, 2:37:22 AM (9 years ago)
Author:
blair@…
Message:

Whitespace only clean up, replace all tabs with spaces and re-indent
to fit in 80 characters (where reasonable).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dports/java/tomcat6/Portfile

    r72273 r75201  
    44PortSystem 1.0
    55
    6 name                            tomcat6
    7 version                         6.0.29
    8 
    9 categories                      java www
    10 maintainers                     ricci blair openmaintainer
    11 platforms                       darwin
    12 
    13 description                     Tomcat 6 HTTP Server and Java Servlet Container.
    14 long_description        Tomcat is the servlet container that is used in the official \
    15                                         Reference Implementation for the Java Servlet and JavaServer \
    16                                         Pages technologies.
    17 homepage                        http://tomcat.apache.org/
    18 
    19 distname                        apache-tomcat-${version}-src
    20 master_sites            apache:tomcat/tomcat-6/v${version}/src/
    21 
    22 checksums           md5     260de5ae62f415b9c085c5aeed4ef24c \
    23                     sha1    255e080706578be0b0f15c67989718ab94e52837 \
    24                     rmd160 eb789c63aaf629ec897b4280924e086c969169f6
    25 
    26 patchfiles                      patch-bin-catalina.sh   \
    27                                         patch-build.xml.diff
    28 
    29 depends_build           bin:ant:apache-ant
    30 depends_lib                     bin:java:kaffe \
    31                                         bin:jsvc:commons-daemon \
    32                                         port:jakarta-taglibs-standard-11 \
    33                                         port:commons-beanutils \
    34                                         port:commons-collections \
    35                                         port:commons-launcher \
    36                                         port:commons-daemon \
    37                                         port:commons-digester \
    38                                         port:commons-el \
    39                                         port:commons-logging \
    40                                         port:commons-modeler \
    41                                         port:commons-httpclient \
    42                                         port:commons-pool \
    43                                         port:commons-dbcp \
    44                                         port:commons-fileupload \
    45                                         port:commons-io \
    46                                         port:jakarta-regexp \
    47                                         port:xercesj \
    48                                         port:jakarta-log4j \
    49                                         port:mx4j \
    50                                         port:junit \
    51                                         port:saxpath
    52 
    53 ##                                      port:jaxen \
    54                                
    55 set javaLibs            ${prefix}/share/java
    56 set home                        share/java/tomcat6
    57 set tomcatuser          www
    58 set tomcatgroup         www
    59 
    60 use_configure           no
    61 
    62 build.cmd                       ant
    63 build.target            download
    64 set antArgs              [join "
    65                     -Dversion=${version}
    66                     -Dversion.build=[lindex [split ${version} .] 2]
    67                                         -Dbase.path=${worksrcpath}/Repository
    68                                         -Dnsis.exe=${worksrcpath}/.bogus
    69                                         -Dcommons-beanutils.jar=${javaLibs}/commons-beanutils.jar
    70                                         -Dcommons-collections.jar=${javaLibs}/commons-collections.jar
    71                                         -Dcommons-launcher.jar=${javaLibs}/commons-launcher.jar
    72                                         -Dcommons-daemon.jar=${javaLibs}/commons-daemon.jar
    73                                         -Dcommons-digester.jar=${javaLibs}/commons-digester.jar
    74                                         -Dcommons-el.jar=${javaLibs}/commons-el.jar
    75                                         -Dcommons-logging.jar=${javaLibs}/commons-logging.jar
    76                                         -Dcommons-logging-api.jar=${javaLibs}/commons-logging-api.jar
    77                                         -Dcommons-modeler.jar=${javaLibs}/commons-modeler.jar
    78                                         -Dcommons-httpclient.jar=${javaLibs}/commons-httpclient.jar
    79                                         -Dcommons-pool.jar=${javaLibs}/commons-pool.jar
    80                                         -Dcommons-dbcp.jar=${javaLibs}/commons-dbcp.jar
    81                                         -Dcommons-fileupload.jar=${javaLibs}/commons-fileupload.jar
    82                                         -Dregexp.jar=${javaLibs}/jakarta-regexp.jar
    83                                         -DxercesImpl.jar=${javaLibs}/xercesImpl.jar
    84                                         -Dxml-apis.jar=${javaLibs}/xml-apis.jar
    85                                         -Dlog4j.jar=${javaLibs}/jakarta-log4j.jar
    86                                         -Djmx.lib=${javaLibs}
    87                                         -Djunit.jar=${javaLibs}/junit.jar
    88                                         -Dsaxpath.jar=${javaLibs}/saxpath.jar
    89                                         -Djasper.home=${worksrcpath}/../jasper
    90                                         "]
    91 #                                       -Dstruts.lib=${javaLibs}/struts/lib
    92 ##                                      -Djaxen.jar=${javaLibs}/jaxen.jar
    93 
    94 build.args                      $antArgs
     6name                    tomcat6
     7version                 6.0.29
     8
     9categories              java www
     10maintainers             ricci blair openmaintainer
     11platforms               darwin
     12
     13description             Tomcat 6 HTTP Server and Java Servlet Container.
     14long_description        Tomcat is the servlet container that is used in \
     15                        the official Reference Implementation for the \
     16                        Java Servlet and JavaServer Pages technologies.
     17homepage                http://tomcat.apache.org/
     18
     19distname                apache-tomcat-${version}-src
     20master_sites            apache:tomcat/tomcat-6/v${version}/src/
     21
     22checksums               md5    260de5ae62f415b9c085c5aeed4ef24c \
     23                        sha1   255e080706578be0b0f15c67989718ab94e52837 \
     24                        rmd160 eb789c63aaf629ec897b4280924e086c969169f6
     25
     26patchfiles              patch-bin-catalina.sh \
     27                        patch-build.xml.diff
     28
     29depends_build           bin:ant:apache-ant
     30depends_lib             bin:java:kaffe \
     31                        bin:jsvc:commons-daemon \
     32                        port:jakarta-taglibs-standard-11 \
     33                        port:commons-beanutils \
     34                        port:commons-collections \
     35                        port:commons-launcher \
     36                        port:commons-daemon \
     37                        port:commons-digester \
     38                        port:commons-el \
     39                        port:commons-logging \
     40                        port:commons-modeler \
     41                        port:commons-httpclient \
     42                        port:commons-pool \
     43                        port:commons-dbcp \
     44                        port:commons-fileupload \
     45                        port:commons-io \
     46                        port:jakarta-regexp \
     47                        port:xercesj \
     48                        port:jakarta-log4j \
     49                        port:mx4j \
     50                        port:junit \
     51                        port:saxpath
     52
     53##                      port:jaxen \
     54
     55set javaLibs            ${prefix}/share/java
     56set home                share/java/tomcat6
     57set tomcatuser          www
     58set tomcatgroup         www
     59
     60use_configure           no
     61
     62build.cmd               ant
     63build.target            download
     64set antArgs            [join "
     65                               -Dversion=${version}
     66                               -Dversion.build=[lindex [split ${version} .] 2]
     67                               -Dbase.path=${worksrcpath}/Repository
     68                               -Dnsis.exe=${worksrcpath}/.bogus
     69                               -Dcommons-beanutils.jar=${javaLibs}/commons-beanutils.jar
     70                               -Dcommons-collections.jar=${javaLibs}/commons-collections.jar
     71                               -Dcommons-launcher.jar=${javaLibs}/commons-launcher.jar
     72                               -Dcommons-daemon.jar=${javaLibs}/commons-daemon.jar
     73                               -Dcommons-digester.jar=${javaLibs}/commons-digester.jar
     74                               -Dcommons-el.jar=${javaLibs}/commons-el.jar
     75                               -Dcommons-logging.jar=${javaLibs}/commons-logging.jar
     76                               -Dcommons-logging-api.jar=${javaLibs}/commons-logging-api.jar
     77                               -Dcommons-modeler.jar=${javaLibs}/commons-modeler.jar
     78                               -Dcommons-httpclient.jar=${javaLibs}/commons-httpclient.jar
     79                               -Dcommons-pool.jar=${javaLibs}/commons-pool.jar
     80                               -Dcommons-dbcp.jar=${javaLibs}/commons-dbcp.jar
     81                               -Dcommons-fileupload.jar=${javaLibs}/commons-fileupload.jar
     82                               -Dregexp.jar=${javaLibs}/jakarta-regexp.jar
     83                               -DxercesImpl.jar=${javaLibs}/xercesImpl.jar
     84                               -Dxml-apis.jar=${javaLibs}/xml-apis.jar
     85                               -Dlog4j.jar=${javaLibs}/jakarta-log4j.jar
     86                               -Djmx.lib=${javaLibs}
     87                               -Djunit.jar=${javaLibs}/junit.jar
     88                               -Dsaxpath.jar=${javaLibs}/saxpath.jar
     89                               -Djasper.home=${worksrcpath}/../jasper
     90                              "]
     91#                              -Dstruts.lib=${javaLibs}/struts/lib
     92##                             -Djaxen.jar=${javaLibs}/jaxen.jar
     93
     94build.args              $antArgs
    9595
    9696pre-build {
    97         #
    98         # Tomcat in this version requires ant 1.6.5.
    99         # If the current version of ant is not at least 1.6.5 then
    100         # tell the user and fail.
    101         #
    102         if { [string length [auto_execok ant]] } {
    103                 set verOutput [exec ant -version]
    104                 regexp {version (\d+(\.\d+)*)} $verOutput -> antVersion
    105                 if { [rpm-vercomp $antVersion "1.6.5"] < 0 } {
    106                         return -code error "This version of tomcat requires ant version 1.6.5 or better. Please install a newer ant before proceeding."
    107                 }
    108         }
    109 
    110         # Make a bogus file to prevent nsis.exe from downloading
    111         system "touch ${worksrcpath}/.bogus"
     97        #
     98        # Tomcat in this version requires ant 1.6.5.
     99        # If the current version of ant is not at least 1.6.5 then
     100        # tell the user and fail.
     101        #
     102        if { [string length [auto_execok ant]] } {
     103                set verOutput [exec ant -version]
     104                regexp {version (\d+(\.\d+)*)} $verOutput -> antVersion
     105                if { [rpm-vercomp $antVersion "1.6.5"] < 0 } {
     106                        return -code error "This version of tomcat requires ant version 1.6.5 or better. Please install a newer ant before proceeding."
     107                }
     108        }
     109
     110        # Make a bogus file to prevent nsis.exe from downloading
     111        system "touch ${worksrcpath}/.bogus"
    112112}
    113113
    114114destroot {
    115         set target ${destroot}${prefix}/${home}
    116         xinstall -m 755 -d ${target}
    117 
    118         # Ensure we've got needed directories
    119         ui_msg "# setting up needed dirs"
    120         xinstall -m 755 -d \
    121                 ${destroot}${prefix}/share/java \
    122                 ${destroot}${prefix}/share/doc \
    123                 ${destroot}${prefix}/etc/rc.d
    124                
    125         # Create the tomcat user
    126         addgroup ${tomcatgroup}
    127         set gid [existsgroup ${tomcatgroup}]
    128         adduser ${tomcatuser} gid=${gid} realname=Web Server
    129        
    130         # Install Tomcat
    131         ui_msg "# installing tomcat..."
    132         system "cd ${worksrcpath} && ant $antArgs deploy"
    133         ## build space:
    134         file copy ${worksrcpath}/output/build/bin ${target}
    135         file copy ${worksrcpath}/output/build/conf ${target}
    136         file copy ${worksrcpath}/output/build/lib ${target}
    137         file copy ${worksrcpath}/output/build/temp ${target}
    138         file copy ${worksrcpath}/output/build/webapps ${target}
    139         ## and classes:
    140         file copy ${worksrcpath}/output/classes ${target}/shared/
    141        
    142         # Add the jstl libs to tomcat6/shared/lib so that they're available to all
    143         ui_msg "# adding the jstl libs "
    144         xinstall -m 755 -d ${target}/shared/lib
    145         xinstall -m 644 \
    146                 ${prefix}/share/java/jstl.jar \
    147                 ${prefix}/share/java/standard.jar \
    148                 ${target}/shared/lib
    149                
    150         # Remove unwanted files
    151         foreach f [glob -directory ${target}/bin *.bat] { file delete $f }
    152        
    153         # Maintain empty directories
    154         ui_msg "# maint. empty dirs... "
    155         xinstall -m 755 -d ${target}/work
    156         xinstall -m 755 -d ${target}/logs
    157         destroot.keepdirs-append \
    158                 ${target}/logs \
    159                 ${target}/temp \
    160                 ${target}/work \
    161                 ${target}/shared/classes \
    162                 ${target}/common/classes
    163                
    164         # Install our scripts
    165         ui_msg "# adding our scripts "
    166         xinstall -m 755 \
    167                 ${filespath}/tomcatctl \
    168                 ${filespath}/conf_setup.sh \
    169                 ${filespath}/setenv.sh \
    170                 ${target}/bin
    171         ui_msg "# adding our scripts 2"
    172         xinstall -m 755 \
    173                 ${filespath}/setenv.local \
    174                 ${target}/conf
    175        
    176         # Add a symlink from bin directory to tomcatctl
    177         system "cd ${destroot}${prefix}/bin && ln -s ../${home}/bin/tomcatctl"
    178        
    179         # Configure the scripts
    180         reinplace s|PREFIX=$|PREFIX=${prefix}| ${target}/bin/tomcatctl
    181         reinplace s|TOMCAT_USER=$|TOMCAT_USER=${tomcatuser}| ${target}/bin/tomcatctl
    182        
    183         # Rename certain files as .sample to avoid replacing them on update
    184         # These will be "repaired" by conf_setup.sh on first run
    185         foreach f       "
    186                                 catalina.policy
    187                                 catalina.properties
    188                                 server.xml
    189                                 tomcat-users.xml
    190                                 web.xml
    191                                 setenv.local
    192                                 " {
    193                 file rename ${target}/conf/${f} ${target}/conf/${f}.sample
    194         }
    195 
    196         # Fix ownership of some directories tomcat really needs to write to
    197         system "chown -R ${tomcatuser}:${tomcatgroup} \
    198                 ${target}/conf \
    199                 ${target}/logs \
    200                 ${target}/temp \
    201                 ${target}/webapps \
    202                 ${target}/work"
    203        
    204         # Install the docs
    205         file copy ${worksrcpath}/webapps/docs \
    206                 ${destroot}${prefix}/share/doc/${name}
     115        set target ${destroot}${prefix}/${home}
     116        xinstall -m 755 -d ${target}
     117
     118        # Ensure we've got needed directories
     119        ui_msg "# setting up needed dirs"
     120        xinstall -m 755 -d \
     121                ${destroot}${prefix}/share/java \
     122                ${destroot}${prefix}/share/doc \
     123                ${destroot}${prefix}/etc/rc.d
     124
     125        # Create the tomcat user
     126        addgroup ${tomcatgroup}
     127        set gid [existsgroup ${tomcatgroup}]
     128        adduser ${tomcatuser} gid=${gid} realname=Web Server
     129
     130        # Install Tomcat
     131        ui_msg "# installing tomcat..."
     132        system "cd ${worksrcpath} && ant $antArgs deploy"
     133        ## build space:
     134        file copy ${worksrcpath}/output/build/bin ${target}
     135        file copy ${worksrcpath}/output/build/conf ${target}
     136        file copy ${worksrcpath}/output/build/lib ${target}
     137        file copy ${worksrcpath}/output/build/temp ${target}
     138        file copy ${worksrcpath}/output/build/webapps ${target}
     139        ## and classes:
     140        file copy ${worksrcpath}/output/classes ${target}/shared/
     141
     142        # Add the jstl libs to tomcat6/shared/lib so that they're
     143        # available to all
     144        ui_msg "# adding the jstl libs "
     145        xinstall -m 755 -d ${target}/shared/lib
     146        xinstall -m 644 \
     147                ${prefix}/share/java/jstl.jar \
     148                ${prefix}/share/java/standard.jar \
     149                ${target}/shared/lib
     150
     151        # Remove unwanted files
     152        foreach f [glob -directory ${target}/bin *.bat] { file delete $f }
     153
     154        # Maintain empty directories
     155        ui_msg "# maint. empty dirs... "
     156        xinstall -m 755 -d ${target}/work
     157        xinstall -m 755 -d ${target}/logs
     158        destroot.keepdirs-append \
     159                ${target}/logs \
     160                ${target}/temp \
     161                ${target}/work \
     162                ${target}/shared/classes \
     163                ${target}/common/classes
     164
     165        # Install our scripts
     166        ui_msg "# adding our scripts "
     167        xinstall -m 755 \
     168                ${filespath}/tomcatctl \
     169                ${filespath}/conf_setup.sh \
     170                ${filespath}/setenv.sh \
     171                ${target}/bin
     172        ui_msg "# adding our scripts 2"
     173        xinstall -m 755 \
     174                ${filespath}/setenv.local \
     175                ${target}/conf
     176
     177        # Add a symlink from bin directory to tomcatctl
     178        system "cd ${destroot}${prefix}/bin && ln -s ../${home}/bin/tomcatctl"
     179
     180        # Configure the scripts
     181        reinplace s|PREFIX=$|PREFIX=${prefix}| ${target}/bin/tomcatctl
     182        reinplace s|TOMCAT_USER=$|TOMCAT_USER=${tomcatuser}| ${target}/bin/tomcatctl
     183
     184        # Rename certain files as .sample to avoid replacing them on update
     185        # These will be "repaired" by conf_setup.sh on first run
     186        foreach f "
     187                   catalina.policy
     188                   catalina.properties
     189                   server.xml
     190                   tomcat-users.xml
     191                   web.xml
     192                   setenv.local
     193                  " {
     194                file rename ${target}/conf/${f} ${target}/conf/${f}.sample
     195        }
     196
     197        # Fix ownership of some directories tomcat really needs to write to
     198        system "chown -R ${tomcatuser}:${tomcatgroup} \
     199                ${target}/conf \
     200                ${target}/logs \
     201                ${target}/temp \
     202                ${target}/webapps \
     203                ${target}/work"
     204
     205        # Install the docs
     206        file copy ${worksrcpath}/webapps/docs \
     207                ${destroot}${prefix}/share/doc/${name}
    207208}
    208209
    209210
    210211post-install {
    211         ui_msg "#"
    212         ui_msg "# Configuration files in ${prefix}/${home}/conf have been"
    213         ui_msg "# installed with a .sample extension so that they won't be replaced by a"
    214         ui_msg "# port update. Each will be copied to its proper location during the"
    215         ui_msg "# first startup of tomcat by catalina.sh or tomcatctl if you don't"
    216         ui_msg "# do this yourself first. If this _is_ an update, you might do a diff to"
    217         ui_msg "# verify that you're not missing anything in the newer .sample versions"
    218         ui_msg "# of these files."
    219         ui_msg "#"
    220         ui_msg "# The script ${prefix}/${home}/bin/tomcatctl has been installed to"
    221         ui_msg "# facilitate start and stop of tomcat using the jsvc utility, which allows you to"
    222         ui_msg "# start tomcat as a true daemon process. Once tomcat has acquired its TCP socket,"
    223         ui_msg "# jsvc will drop its root privileges and run as user ${tomcatuser}."
    224         ui_msg "#"
    225         ui_msg "# Under Apple Java, control over the Java version used to launch ${name} is"
    226         ui_msg "# through the shell variable JAVA_JVM_VERSION. This variable should be set"
    227         ui_msg "# to a java version such as 1.5, 1.6, or CurrentJDK (for the default version)."
    228         ui_msg "# You may set JAVA_JVM_VERSION in ${prefix}/${home}/bin/setenv.sh."
    229         ui_msg "#"
     212        ui_msg "#"
     213        ui_msg "# Configuration files in ${prefix}/${home}/conf have been"
     214        ui_msg "# installed with a .sample extension so that they won't be replaced by a"
     215        ui_msg "# port update. Each will be copied to its proper location during the"
     216        ui_msg "# first startup of tomcat by catalina.sh or tomcatctl if you don't"
     217        ui_msg "# do this yourself first. If this _is_ an update, you might do a diff to"
     218        ui_msg "# verify that you're not missing anything in the newer .sample versions"
     219        ui_msg "# of these files."
     220        ui_msg "#"
     221        ui_msg "# The script ${prefix}/${home}/bin/tomcatctl has been installed to"
     222        ui_msg "# facilitate start and stop of tomcat using the jsvc utility, which allows you to"
     223        ui_msg "# start tomcat as a true daemon process. Once tomcat has acquired its TCP socket,"
     224        ui_msg "# jsvc will drop its root privileges and run as user ${tomcatuser}."
     225        ui_msg "#"
     226        ui_msg "# Under Apple Java, control over the Java version used to launch ${name} is"
     227        ui_msg "# through the shell variable JAVA_JVM_VERSION. This variable should be set"
     228        ui_msg "# to a java version such as 1.5, 1.6, or CurrentJDK (for the default version)."
     229        ui_msg "# You may set JAVA_JVM_VERSION in ${prefix}/${home}/bin/setenv.sh."
     230        ui_msg "#"
    230231}
    231232
    232 
    233 startupitem.create              yes
    234 startupitem.executable  "${prefix}/bin/tomcatctl" start
    235 startupitem.pidfile             clean "${prefix}/share/java/tomcat6/logs/${name}.pid"
    236 
    237 
    238 livecheck.type  regex
    239 livecheck.url   ${homepage}/download-60.cgi
    240 livecheck.regex "apache-tomcat-(\\d+\\.\\d+(\\.\\d+)?)-src.tar.gz"
    241 
     233startupitem.create      yes
     234startupitem.executable  "${prefix}/bin/tomcatctl" start
     235startupitem.pidfile     clean "${prefix}/share/java/tomcat6/logs/${name}.pid"
     236
     237
     238livecheck.type          regex
     239livecheck.url           ${homepage}/download-60.cgi
     240livecheck.regex         "apache-tomcat-(\\d+\\.\\d+(\\.\\d+)?)-src.tar.gz"
Note: See TracChangeset for help on using the changeset viewer.