add DACHFest to index
[slides.git] / maow-berlin2009-build / slide_makefiles.html
CommitLineData
5d725cc9 1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2<html>
3<head>
4 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
5 <meta name="Author" content="KaiRo - Robert Kaiser">
6 <title>Das Mozilla-Build-System - Makefiles</title>
7 <link rel="stylesheet" type="text/css" href="slides.css">
8 <script type="text/javascript" src="slides.js"></script>
9 <link rel="contents" href="index.html" title="&Uuml;bersicht">
10 <link rel="index" href="toc.html" title="Inhalt">
11 <link rel="start" href="index.html" title="Beginn">
12 <link rel="first" href="slide_introduction.html" title="Erste Seite">
13 <link rel="previous" href="slide_buildapp.html" title="Vorige Seite">
14 <link rel="next" href="slide_jarmaker.html" title="N&auml;chste Seite">
15 <link rel="last" href="slide_end.html" title="Letzte Seite">
16</head>
17<body>
18<div id="header"><div id="header-text">Das Mozilla-Build-System</div>
19 <img id="headerlogo" src="template/header-logo.png" alt="">
20</div>
21<div id="slidenav"><div id="subheader-text">MAOW Berlin 2009</div>
22 <a href="toc.html" accesskey="h">Inhalt</a> ||
23 <a href="index.html" accesskey="B">Beginn</a> ||
24 <a href="slide_buildapp.html" accesskey="Z">&lt; Zur&uuml;ck</a> |
25 <a href="slide_jarmaker.html" id="goNext" accesskey="W">Weiter &gt;</a>
26</div>
27
28<h1>Makefile-Regeln, der Kern der Sache</h1>
29
30<div class="simplebox">
31<ul>
32 <li>Makefiles enthalten die Regeln f&uuml;r den Bau jeglichen Codes (Makefile
33 im "objdir" wird aus Makefile.in in Quellcode-Verzeichnis erzeugt)</li>
34 <li><code>mozilla-central/extensions/testext/Makefile.in</code>:
35 <pre># [...Lizenz-Kopf...]
36DEPTH=../..
37topsrcdir=@top_srcdir@
38srcdir=@srcdir@
39VPATH=@srcdir@
40
41# Allgemeine Konfigurations-Variablen importieren
42include $(DEPTH)/config/autoconf.mk
43
44# Build-System-interner Name des Moduls (der Erweiterung)
45MODULE = testext
46# Name des Verzeichnisses in xpi-stage/ (normalerweise gleich wie MODULE)
47XPI_NAME = testext
48# Eintr&auml;ge aus paralleler jar.mn kommen in Erweiterungs-eigenes chrome.manifest
49USE_EXTENSION_MANIFEST = 1
50# Haupt-Makefile der Erweiterung mit dieser ID (wie in install.rdf angegeben)
51INSTALL_EXTENSION_ID = testext@example.org
52# Dateiname der fertigen XPI-Datei in xpi-stage
53XPI_PKGNAME = testext-$(MOZ_APP_VERSION)
54
55# Dateien, die in das XPI-Paket kopiert werden sollen
56DIST_FILES = install.rdf
57
58# Unterverzeichnisse, in denen weitere Makefiles enthalten sind
59DIRS = locales subtest
60
61# zu installierende XPCOM-Komponenten
62EXTRA_COMPONENTS = components/testext-service.js
63
64# rules.mk verwendet die Variablen und macht die eigentliche Arbeit
65include $(topsrcdir)/config/rules.mk</pre>
66 </li>
67 <li><code>MODULE</code> und <code>XPI_NAME</code> sollten in jedem Makefile
44895481 68 der Erweiterung angegeben werden, damit Dateien im XPI landen</li>
5d725cc9 69</ul>
70</div>
71</div>
72
73</body>
74</html>