$ ln -s packages/net/nmap kamikaze/package/nmap
\end{Verbatim}
-To include all packages, issue the following command :
+To include all packages, issue the following command:
\begin{Verbatim}
$ ln -s packages/*/* kamikaze/package/
\end{itemize}
After you've finished with the menu configuration, exit and when prompted, save your
-configuration changes. To begin compiling the firmware, type "\texttt{make}". By default
+configuration changes.
+
+If you want, you can also modify the kernel config for the selected target system.
+simply run "\texttt{make kernel\_menuconfig}" and the build system will unpack the kernel sources
+(if necessary), run menuconfig inside of the kernel tree, and then copy the kernel config
+to \texttt{target/linux/\textit{<platform>}/config} so that it is preserved over
+"\texttt{make clean}" calls.
+
+To begin compiling the firmware, type "\texttt{make}". By default
OpenWrt will only display a high level overview of the compile process and not each individual
command.
\item \texttt{SECTION} \\
The type of package (currently unused)
\item \texttt{CATEGORY} \\
- Which menu it appears in menuconfig : Network, Sound, Utilities, Multimedia ...
+ Which menu it appears in menuconfig: Network, Sound, Utilities, Multimedia ...
\item \texttt{TITLE} \\
A short description of the package
\item \texttt{URL} \\
\item \texttt{MAINTAINER} (optional) \\
Who to contact concerning the package
\item \texttt{DEPENDS} (optional) \\
- Which packages must be built/installed before this package. To reference a dependency defined in the same Makefile, use \textit{<dependency name>}. If defined as an external package, use \textit{+<dependency name>}. For a kernel version dependency use: \textit{@LINUX\_2\_<minor version>}
+ Which packages must be built/installed before this package. To reference a dependency defined in the
+ same Makefile, use \textit{<dependency name>}. If defined as an external package, use
+ \textit{+<dependency name>}. For a kernel version dependency use: \textit{@LINUX\_2\_<minor version>}
\end{itemize}
\textbf{\texttt{Package/\textit{<name>}/conffiles} (optional):} \\
You can leave this undefined if the source doesn't use configure or has a
normal config script, otherwise you can put your own commands here or use
"\texttt{\$(call Build/Configure/Default,\textit{<first list of arguments, second list>})}" as above to
- pass in additional arguments for a standard configure script. The first list of arguments will be passed to the configure script like that : $--arg 1$ $--arg 2$. The second list contains arguments that should be defined before running the configure script such as autoconf or compiler specific variables.
+ pass in additional arguments for a standard configure script. The first list of arguments will be passed
+ to the configure script like that: \texttt{--arg 1} \texttt{--arg 2}. The second list contains arguments that should be
+ defined before running the configure script such as autoconf or compiler specific variables.
+
+ To make it easier to modify the configure command line, you can either extend or completely override the following variables:
+ \begin{itemize}
+ \item \texttt{CONFIGURE\_ARGS} \\
+ Contains all command line arguments (format: \texttt{--arg 1} \texttt{--arg 2})
+ \item \texttt{CONFIGURE\_VARS} \\
+ Contains all environment variables that are passed to ./configure (format: \texttt{NAME="value"})
+ \end{itemize}
\textbf{\texttt{Build/Compile} (optional):} \\
How to compile the source; in most cases you should leave this undefined.
+
+ As with \texttt{Build/Configure} there are two variables that allow you to override
+ the make command line environment variables and flags:
+ \begin{itemize}
+ \item \texttt{MAKE\_FLAGS} \\
+ Contains all command line arguments (typically variable overrides like \texttt{NAME="value"}
+ \item \texttt{MAKE\_VARS} \\
+ Contains all environment variables that are passed to the make command
+ \end{itemize}
\textbf{\texttt{Package/\textit{<name>}/install}:} \\
A set of commands to copy files out of the compiled source and into the ipkg