summaryrefslogtreecommitdiffstats
path: root/doc/platform-notes.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/platform-notes.xml')
-rw-r--r--doc/platform-notes.xml84
1 files changed, 38 insertions, 46 deletions
diff --git a/doc/platform-notes.xml b/doc/platform-notes.xml
index f4f6ec600294..b2c20c2d35c0 100644
--- a/doc/platform-notes.xml
+++ b/doc/platform-notes.xml
@@ -1,27 +1,25 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="chap-platform-nodes">
+ <title>Platform Notes</title>
+ <section xml:id="sec-darwin">
+ <title>Darwin (macOS)</title>
-<title>Platform Notes</title>
+ <para>
+ Some common issues when packaging software for darwin:
+ </para>
-<section xml:id="sec-darwin">
-
-<title>Darwin (macOS)</title>
-<para>Some common issues when packaging software for darwin:</para>
-
-<itemizedlist>
-
- <listitem>
+ <itemizedlist>
+ <listitem>
<para>
- The darwin <literal>stdenv</literal> uses clang instead of gcc.
- When referring to the compiler <varname>$CC</varname> or <command>cc</command>
- will work in both cases. Some builds hardcode gcc/g++ in their
- build scripts, that can usually be fixed with using something
- like <literal>makeFlags = [ "CC=cc" ];</literal> or by patching
- the build scripts.
+ The darwin <literal>stdenv</literal> uses clang instead of gcc. When
+ referring to the compiler <varname>$CC</varname> or <command>cc</command>
+ will work in both cases. Some builds hardcode gcc/g++ in their build
+ scripts, that can usually be fixed with using something like
+ <literal>makeFlags = [ "CC=cc" ];</literal> or by patching the build
+ scripts.
</para>
-
- <programlisting>
+<programlisting>
stdenv.mkDerivation {
name = "libfoo-1.2.3";
# ...
@@ -30,36 +28,33 @@
'';
}
</programlisting>
- </listitem>
-
- <listitem>
+ </listitem>
+ <listitem>
<para>
- On darwin libraries are linked using absolute paths, libraries
- are resolved by their <literal>install_name</literal> at link
- time. Sometimes packages won't set this correctly causing the
- library lookups to fail at runtime. This can be fixed by adding
- extra linker flags or by running <command>install_name_tool -id</command>
- during the <function>fixupPhase</function>.
+ On darwin libraries are linked using absolute paths, libraries are
+ resolved by their <literal>install_name</literal> at link time. Sometimes
+ packages won't set this correctly causing the library lookups to fail at
+ runtime. This can be fixed by adding extra linker flags or by running
+ <command>install_name_tool -id</command> during the
+ <function>fixupPhase</function>.
</para>
-
- <programlisting>
+<programlisting>
stdenv.mkDerivation {
name = "libfoo-1.2.3";
# ...
makeFlags = stdenv.lib.optional stdenv.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/libfoo.dylib";
}
</programlisting>
- </listitem>
-
- <listitem>
+ </listitem>
+ <listitem>
<para>
- Some packages assume xcode is available and use <command>xcrun</command>
- to resolve build tools like <command>clang</command>, etc.
- This causes errors like <code>xcode-select: error: no developer tools were found at '/Applications/Xcode.app'</code>
- while the build doesn't actually depend on xcode.
+ Some packages assume xcode is available and use <command>xcrun</command>
+ to resolve build tools like <command>clang</command>, etc. This causes
+ errors like <code>xcode-select: error: no developer tools were found at
+ '/Applications/Xcode.app'</code> while the build doesn't actually depend
+ on xcode.
</para>
-
- <programlisting>
+<programlisting>
stdenv.mkDerivation {
name = "libfoo-1.2.3";
# ...
@@ -69,15 +64,12 @@
'';
}
</programlisting>
-
<para>
- The package <literal>xcbuild</literal> can be used to build projects
- that really depend on Xcode, however projects that build some kind of
- graphical interface won't work without using Xcode in an impure way.
+ The package <literal>xcbuild</literal> can be used to build projects that
+ really depend on Xcode, however projects that build some kind of graphical
+ interface won't work without using Xcode in an impure way.
</para>
- </listitem>
-
-</itemizedlist>
-</section>
-
+ </listitem>
+ </itemizedlist>
+ </section>
</chapter>