Ignore:
Timestamp:
Apr 17, 2007, 4:53:05 PM (12 years ago)
Author:
pipping@…
Message:
  • add universal variants

note regarding zlib:

zlib's universal variant is unchanged - it can now savely be readded
because the commands used in the portfile have been included in 1.4.2

note regarding openssl:

the variant universal has been completely rewritten, making use of
fs-traverse (find.c - thanks a lot, Kevin!), backup, lipo (portutil.tcl)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dports/devel/openssl/Portfile

    r23465 r24149  
    4747livecheck.url   ${master_sites}
    4848livecheck.regex ${name}-(0.9.8\[a-z\])
     49
     50variant universal {
     51   
     52# port-specific procedure
     53    proc clean {} {
     54        system "make clean"
     55        foreach f [glob lib*.a lib*.*.*.*.dylib] {
     56            file delete ${f}
     57        }
     58    }
     59
     60# i386
     61    # configure
     62    pre-configure {
     63        cd ${worksrcpath}
     64        system "./Configure darwin-i386-cc ${configure.pre_args} ${configure.args}"
     65        system "patch < ${filespath}/patch-Makefiles-universal-i386"
     66        reinplace "s|^PROCESSOR=.*|PROCESSOR=|" Makefile
     67    }
     68    # build
     69    configure {
     70        cd ${worksrcpath}
     71        system "make"
     72    }
     73    # backup, clean up
     74    post-configure {
     75        cd ${worksrcpath}
     76        # get list of files to be backed up - only needs to be done once
     77        fs-traverse file . {
     78          if {![string equal [string range [file tail $file] end-1 end] .o]} {
     79            set type [exec file -b $file]
     80            if {[regexp {(Mach-O|ar archive)} $type]} {
     81              global universal_filelist
     82              lappend universal_filelist $file
     83            }
     84          }
     85        }
     86
     87        backup i386
     88
     89        clean
     90    }
     91# ppc
     92    # configure
     93    pre-build {
     94        cd ${worksrcpath}
     95        system "./Configure darwin-ppc-cc ${configure.pre_args} ${configure.args}"
     96        system "patch < ${filespath}/patch-Makefiles-universal-ppc"
     97    }
     98    # build
     99    build {
     100        cd ${worksrcpath}
     101        system "make"
     102    }
     103    # backup
     104    post-build {
     105        cd ${worksrcpath}
     106        # there's already a list of files to be backed up
     107
     108        global fileList
     109
     110        backup ppc
     111
     112        clean
     113    }
     114
     115# universal
     116    pre-destroot {
     117        cd ${worksrcpath}
     118        global fileList
     119        system "make openssl.pc libssl.pc libcrypto.pc"
     120        lipo
     121        system "patch < ${filespath}/patch-Makefile-universal-install"
     122    }
     123    destroot.target     install_docs install_sw
     124
     125    # the test suite can only be run *after* destrooting
     126    test.run            yes
     127    test.dir            ${worksrcpath}/test
     128    test.target         alltests
     129}
Note: See TracChangeset for help on using the changeset viewer.