aboutsummaryrefslogtreecommitdiff
path: root/ctags/docs/osx.html
blob: fb8940163aaad9046bd66908d958b99c3d0ead6e (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
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
<!DOCTYPE html>

<html>
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />

    <title>Building on Mac OS &#8212; Universal Ctags 0.3.0 documentation</title>
    <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="_static/classic.css" />
    
    <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
    <script src="_static/jquery.js"></script>
    <script src="_static/underscore.js"></script>
    <script src="_static/doctools.js"></script>
    
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Man pages" href="man-pages.html" />
    <link rel="prev" title="Building/hacking/using on MS-Windows" href="windows.html" /> 
  </head><body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="man-pages.html" title="Man pages"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="windows.html" title="Building/hacking/using on MS-Windows"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">Universal Ctags 0.3.0 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="building.html" accesskey="U">Building ctags</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">Building on Mac OS</a></li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <section id="building-on-mac-os">
<h1>Building on Mac OS<a class="headerlink" href="#building-on-mac-os" title="Permalink to this headline"></a></h1>
<dl class="field-list simple">
<dt class="field-odd">Maintainer</dt>
<dd class="field-odd"><p>Cameron Eagans &lt;<a class="reference external" href="mailto:me&#37;&#52;&#48;cweagans&#46;net">me<span>&#64;</span>cweagans<span>&#46;</span>net</a>&gt;</p>
</dd>
</dl>
<hr class="docutils" />
<p>This part of the documentation is written by Cameron Eagans, a co-maintainer of Universal Ctags and the maintainer of
the OSX packaging of this project.</p>
<section id="build-prerequisites">
<h2>Build Prerequisites<a class="headerlink" href="#build-prerequisites" title="Permalink to this headline"></a></h2>
<p>Building ctags on OSX should be no different than building on GNU/Linux. The same toolchains are used, and the Mac OS
packaging scripts use autotools and make (as you’d expect).</p>
<p>You may need to install the xcode command line tools. You can install the entire xcode distribution from the App Store,
or for a lighter install, you can simply run <code class="docutils literal notranslate"><span class="pre">xcode-select</span> <span class="pre">--install</span></code> to <em>only</em> install the compilers and such. See
<a class="reference external" href="https://stackoverflow.com/a/9329325">https://stackoverflow.com/a/9329325</a> for more information. Once your build toolchain is installed, proceed to the next
section.</p>
<p>At this point, if you’d like to build from an IDE, you’ll have to figure it out. Building ctags is a pretty straightforward
process that matches many other projects and most decent IDEs should be able to handle it.</p>
<section id="building-manually-i-e-for-development">
<h3>Building Manually (i.e. for development)<a class="headerlink" href="#building-manually-i-e-for-development" title="Permalink to this headline"></a></h3>
<p>You can simply run the build instructions in README.md.</p>
</section>
<section id="building-with-homebrew">
<h3>Building with Homebrew<a class="headerlink" href="#building-with-homebrew" title="Permalink to this headline"></a></h3>
<p>Homebrew (<a class="reference external" href="https://brew.sh/">https://brew.sh/</a>) is the preferred method for installing Universal Ctags for end users. Currently, the process
for installing with Homebrew looks like this:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">brew</span> <span class="n">tap</span> <span class="n">universal</span><span class="o">-</span><span class="n">ctags</span><span class="o">/</span><span class="n">universal</span><span class="o">-</span><span class="n">ctags</span>
<span class="n">brew</span> <span class="n">install</span> <span class="o">--</span><span class="n">HEAD</span> <span class="n">universal</span><span class="o">-</span><span class="n">ctags</span>
</pre></div>
</div>
<p>Eventually, we hope to move the Universal-ctags formula to the main Homebrew repository, but since we don’t have any
tagged releases at this point, it’s a head-only formula and wouldn’t be accepted. When we have a tagged release, we’ll
submit a PR to Homebrew.</p>
<p>If you’d like to help with the Homebrew formula, you can find the repository here:
<a class="reference external" href="https://github.com/universal-ctags/homebrew-universal-ctags">https://github.com/universal-ctags/homebrew-universal-ctags</a></p>
</section>
</section>
<section id="differences-between-osx-and-gnu-linux">
<h2>Differences between OSX and GNU/Linux<a class="headerlink" href="#differences-between-osx-and-gnu-linux" title="Permalink to this headline"></a></h2>
<p>There other things where building ctags on OSX differs from building on GNU/Linux.</p>
<ul class="simple">
<li><p>Filenames on HFS+ (the Mac OS filesystem) are case-preserving, but not case-sensitive in 99% of configurations. If a
user manually formats their disk with a case sensitive version of HFS+, then the filesystem will behave like normal
GNU/Linux systems. Depending on users doing this is not a good thing.</p></li>
</ul>
</section>
<section id="contributing">
<h2>Contributing<a class="headerlink" href="#contributing" title="Permalink to this headline"></a></h2>
<p>This documentation is very much a work in progress. If you’d like to contribute, submit a PR and mention &#64;cweagans for
review.</p>
</section>
</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="index.html">Table of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">Building on Mac OS</a><ul>
<li><a class="reference internal" href="#build-prerequisites">Build Prerequisites</a><ul>
<li><a class="reference internal" href="#building-manually-i-e-for-development">Building Manually (i.e. for development)</a></li>
<li><a class="reference internal" href="#building-with-homebrew">Building with Homebrew</a></li>
</ul>
</li>
<li><a class="reference internal" href="#differences-between-osx-and-gnu-linux">Differences between OSX and GNU/Linux</a></li>
<li><a class="reference internal" href="#contributing">Contributing</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="windows.html"
                        title="previous chapter">Building/hacking/using on MS-Windows</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="man-pages.html"
                        title="next chapter">Man pages</a></p>
<div id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" />
      <input type="submit" value="Go" />
    </form>
    </div>
</div>
<script>$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="man-pages.html" title="Man pages"
             >next</a> |</li>
        <li class="right" >
          <a href="windows.html" title="Building/hacking/using on MS-Windows"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">Universal Ctags 0.3.0 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="building.html" >Building ctags</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">Building on Mac OS</a></li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2015, Universal Ctags Team.
      Last updated on 11 Jun 2021.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 4.0.2.
    </div>
  </body>
</html>