require 'formula' class Dovecot < Formula url 'http://www.dovecot.org/releases/2.0/dovecot-2.0.15.tar.gz' md5 '16a08dfd24422d482440a8b03d6f7f6c' homepage 'http://dovecot.org/' def patches; DATA; end def install system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}", "--libexecdir=#{libexec}", "--sysconfdir=#{etc}", "--localstatedir=#{var}", "--with-ssl=openssl" system "make install" end def caveats; <<-EOS For Dovecot to work, you will need to do the following: 1) Create configuration in #{etc} 2) If required by the configuration above, create a dovecot user and group 3) possibly create a launchd item in /Library/LaunchDaemons/org.dovecot.plist, like so: Label org.dovecot OnDemand ProgramArguments #{sbin}/dovecot -F RunAtLoad ServiceDescription Dovecot mail server Source: http://wiki.dovecot.org/LaunchdInstall 4) start the server using: sudo launchctl load /Library/LaunchDaemons/org.dovecot.plist EOS end end __END__ # This patch fixes a linking problem looking for _environ, call # _NSGetEnviron() instead (upstream does that at another location but # missesthis one). diff --git a/src/lib/env-util.c b/src/lib/env-util.c index 8111db7..c3520d0 100644 --- a/src/lib/env-util.c +++ b/src/lib/env-util.c @@ -7,6 +7,7 @@ #include #ifdef __APPLE__ # include +# define environ (*_NSGetEnviron()) #endif struct env_backup { @@ -36,7 +37,6 @@ void env_remove(const char *name) unsetenv(name); #endif #else - extern char **environ; unsigned int len; char **envp; @@ -109,7 +109,6 @@ void env_clean_except(const char *const preserve_envs[]) struct env_backup *env_backup_save(void) { - char **environ = *env_get_environ_p(); struct env_backup *env; unsigned int i, count; pool_t pool; committer
blob: bf09b9c183c5a9653a820550f73e083166c8dc8e (plain)
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
'use strict';

/**
 * @ngdoc directive
 * @name ng.directive:ngTransclude
 *
 * @description
 * Insert the transcluded DOM here.
 *
 * @element ANY
 *
 * @example
   <doc:example module="transclude">
     <doc:source>
       <script>
         function Ctrl($scope) {
           $scope.title = 'Lorem Ipsum';
           $scope.text = 'Neque porro quisquam est qui dolorem ipsum quia dolor...';
         }

         angular.module('transclude', [])
          .directive('pane', function(){
             return {
               restrict: 'E',
               transclude: true,
               scope: 'isolate',
               locals: { title:'bind' },
               template: '<div style="border: 1px solid black;">' +
                           '<div style="background-color: gray">{{title}}</div>' +
                           '<div ng-transclude></div>' +
                         '</div>'
             };
         });
       </script>
       <div ng-controller="Ctrl">
         <input ng-model="title"><br>
         <textarea ng-model="text"></textarea> <br/>
         <pane title="{{title}}">{{text}}</pane>
       </div>
     </doc:source>
     <doc:scenario>
        it('should have transcluded', function() {
          input('title').enter('TITLE');
          input('text').enter('TEXT');
          expect(binding('title')).toEqual('TITLE');
          expect(binding('text')).toEqual('TEXT');
        });
     </doc:scenario>
   </doc:example>
 *
 */
var ngTranscludeDirective = ngDirective({
  controller: ['$transclude', '$element', function($transclude, $element) {
    $transclude(function(clone) {
      $element.append(clone);
    });
  }]
});