mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-29 10:39:22 +00:00
automake based build system for grub
This commit is contained in:
commit
0c8b61d8e4
540 files changed
+3850
-4083
No files matched your search
+17
-1
@@ -19,7 +19,6 @@ config.status
|
|||||||
config.sub
|
config.sub
|
||||||
configure
|
configure
|
||||||
conf/*.mk
|
conf/*.mk
|
||||||
conf/gcry.rmk
|
|
||||||
*.d
|
*.d
|
||||||
DISTLIST
|
DISTLIST
|
||||||
docs/*.info
|
docs/*.info
|
||||||
@@ -79,3 +78,20 @@ symlist.c
|
|||||||
trigtables.c
|
trigtables.c
|
||||||
update-grub_lib
|
update-grub_lib
|
||||||
unidata.c
|
unidata.c
|
||||||
|
Makefile.in
|
||||||
|
GPATH
|
||||||
|
GRTAGS
|
||||||
|
GSYMS
|
||||||
|
GTAGS
|
||||||
|
Makefile.tpl
|
||||||
|
compile
|
||||||
|
depcomp
|
||||||
|
mdate-sh
|
||||||
|
texinfo.tex
|
||||||
|
grub-core/lib/libgcrypt-grub
|
||||||
|
**/.deps-util
|
||||||
|
**/.deps-core
|
||||||
|
Makefile.util.am
|
||||||
|
grub-core/Makefile.core.am
|
||||||
|
grub-core/Makefile.gcry.am
|
||||||
|
grub-core/Makefile.gcry.def
|
||||||
@@ -0,0 +1,223 @@
|
|||||||
|
1 Notes on the Free Translation Project
|
||||||
|
***************************************
|
||||||
|
|
||||||
|
Free software is going international! The Free Translation Project is
|
||||||
|
a way to get maintainers of free software, translators, and users all
|
||||||
|
together, so that free software will gradually become able to speak many
|
||||||
|
languages. A few packages already provide translations for their
|
||||||
|
messages.
|
||||||
|
|
||||||
|
If you found this `ABOUT-NLS' file inside a distribution, you may
|
||||||
|
assume that the distributed package does use GNU `gettext' internally,
|
||||||
|
itself available at your nearest GNU archive site. But you do _not_
|
||||||
|
need to install GNU `gettext' prior to configuring, installing or using
|
||||||
|
this package with messages translated.
|
||||||
|
|
||||||
|
Installers will find here some useful hints. These notes also
|
||||||
|
explain how users should proceed for getting the programs to use the
|
||||||
|
available translations. They tell how people wanting to contribute and
|
||||||
|
work on translations can contact the appropriate team.
|
||||||
|
|
||||||
|
When reporting bugs in the `intl/' directory or bugs which may be
|
||||||
|
related to internationalization, you should tell about the version of
|
||||||
|
`gettext' which is used. The information can be found in the
|
||||||
|
`intl/VERSION' file, in internationalized packages.
|
||||||
|
|
||||||
|
1.1 Quick configuration advice
|
||||||
|
==============================
|
||||||
|
|
||||||
|
If you want to exploit the full power of internationalization, you
|
||||||
|
should configure it using
|
||||||
|
|
||||||
|
./configure --with-included-gettext
|
||||||
|
|
||||||
|
to force usage of internationalizing routines provided within this
|
||||||
|
package, despite the existence of internationalizing capabilities in the
|
||||||
|
operating system where this package is being installed. So far, only
|
||||||
|
the `gettext' implementation in the GNU C library version 2 provides as
|
||||||
|
many features (such as locale alias, message inheritance, automatic
|
||||||
|
charset conversion or plural form handling) as the implementation here.
|
||||||
|
It is also not possible to offer this additional functionality on top
|
||||||
|
of a `catgets' implementation. Future versions of GNU `gettext' will
|
||||||
|
very likely convey even more functionality. So it might be a good idea
|
||||||
|
to change to GNU `gettext' as soon as possible.
|
||||||
|
|
||||||
|
So you need _not_ provide this option if you are using GNU libc 2 or
|
||||||
|
you have installed a recent copy of the GNU gettext package with the
|
||||||
|
included `libintl'.
|
||||||
|
|
||||||
|
1.2 INSTALL Matters
|
||||||
|
===================
|
||||||
|
|
||||||
|
Some packages are "localizable" when properly installed; the programs
|
||||||
|
they contain can be made to speak your own native language. Most such
|
||||||
|
packages use GNU `gettext'. Other packages have their own ways to
|
||||||
|
internationalization, predating GNU `gettext'.
|
||||||
|
|
||||||
|
By default, this package will be installed to allow translation of
|
||||||
|
messages. It will automatically detect whether the system already
|
||||||
|
provides the GNU `gettext' functions. If not, the included GNU
|
||||||
|
`gettext' library will be used. This library is wholly contained
|
||||||
|
within this package, usually in the `intl/' subdirectory, so prior
|
||||||
|
installation of the GNU `gettext' package is _not_ required.
|
||||||
|
Installers may use special options at configuration time for changing
|
||||||
|
the default behaviour. The commands:
|
||||||
|
|
||||||
|
./configure --with-included-gettext
|
||||||
|
./configure --disable-nls
|
||||||
|
|
||||||
|
will, respectively, bypass any pre-existing `gettext' to use the
|
||||||
|
internationalizing routines provided within this package, or else,
|
||||||
|
_totally_ disable translation of messages.
|
||||||
|
|
||||||
|
When you already have GNU `gettext' installed on your system and run
|
||||||
|
configure without an option for your new package, `configure' will
|
||||||
|
probably detect the previously built and installed `libintl.a' file and
|
||||||
|
will decide to use this. This might not be desirable. You should use
|
||||||
|
the more recent version of the GNU `gettext' library. I.e. if the file
|
||||||
|
`intl/VERSION' shows that the library which comes with this package is
|
||||||
|
more recent, you should use
|
||||||
|
|
||||||
|
./configure --with-included-gettext
|
||||||
|
|
||||||
|
to prevent auto-detection.
|
||||||
|
|
||||||
|
The configuration process will not test for the `catgets' function
|
||||||
|
and therefore it will not be used. The reason is that even an
|
||||||
|
emulation of `gettext' on top of `catgets' could not provide all the
|
||||||
|
extensions of the GNU `gettext' library.
|
||||||
|
|
||||||
|
Internationalized packages usually have many `po/LL.po' files, where
|
||||||
|
LL gives an ISO 639 two-letter code identifying the language. Unless
|
||||||
|
translations have been forbidden at `configure' time by using the
|
||||||
|
`--disable-nls' switch, all available translations are installed
|
||||||
|
together with the package. However, the environment variable `LINGUAS'
|
||||||
|
may be set, prior to configuration, to limit the installed set.
|
||||||
|
`LINGUAS' should then contain a space separated list of two-letter
|
||||||
|
codes, stating which languages are allowed.
|
||||||
|
|
||||||
|
1.3 Using This Package
|
||||||
|
======================
|
||||||
|
|
||||||
|
As a user, if your language has been installed for this package, you
|
||||||
|
only have to set the `LANG' environment variable to the appropriate
|
||||||
|
`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code,
|
||||||
|
and `CC' is an ISO 3166 two-letter country code. For example, let's
|
||||||
|
suppose that you speak German and live in Germany. At the shell
|
||||||
|
prompt, merely execute `setenv LANG de_DE' (in `csh'),
|
||||||
|
`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
|
||||||
|
This can be done from your `.login' or `.profile' file, once and for
|
||||||
|
all.
|
||||||
|
|
||||||
|
You might think that the country code specification is redundant.
|
||||||
|
But in fact, some languages have dialects in different countries. For
|
||||||
|
example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The
|
||||||
|
country code serves to distinguish the dialects.
|
||||||
|
|
||||||
|
The locale naming convention of `LL_CC', with `LL' denoting the
|
||||||
|
language and `CC' denoting the country, is the one use on systems based
|
||||||
|
on GNU libc. On other systems, some variations of this scheme are
|
||||||
|
used, such as `LL' or `LL_CC.ENCODING'. You can get the list of
|
||||||
|
locales supported by your system for your language by running the
|
||||||
|
command `locale -a | grep '^LL''.
|
||||||
|
|
||||||
|
Not all programs have translations for all languages. By default, an
|
||||||
|
English message is shown in place of a nonexistent translation. If you
|
||||||
|
understand other languages, you can set up a priority list of languages.
|
||||||
|
This is done through a different environment variable, called
|
||||||
|
`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG'
|
||||||
|
for the purpose of message handling, but you still need to have `LANG'
|
||||||
|
set to the primary language; this is required by other parts of the
|
||||||
|
system libraries. For example, some Swedish users who would rather
|
||||||
|
read translations in German than English for when Swedish is not
|
||||||
|
available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
|
||||||
|
|
||||||
|
Special advice for Norwegian users: The language code for Norwegian
|
||||||
|
bokma*l changed from `no' to `nb' recently (in 2003). During the
|
||||||
|
transition period, while some message catalogs for this language are
|
||||||
|
installed under `nb' and some older ones under `no', it's recommended
|
||||||
|
for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and
|
||||||
|
older translations are used.
|
||||||
|
|
||||||
|
In the `LANGUAGE' environment variable, but not in the `LANG'
|
||||||
|
environment variable, `LL_CC' combinations can be abbreviated as `LL'
|
||||||
|
to denote the language's main dialect. For example, `de' is equivalent
|
||||||
|
to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
|
||||||
|
(Portuguese as spoken in Portugal) in this context.
|
||||||
|
|
||||||
|
1.4 Translating Teams
|
||||||
|
=====================
|
||||||
|
|
||||||
|
For the Free Translation Project to be a success, we need interested
|
||||||
|
people who like their own language and write it well, and who are also
|
||||||
|
able to synergize with other translators speaking the same language.
|
||||||
|
Each translation team has its own mailing list. The up-to-date list of
|
||||||
|
teams can be found at the Free Translation Project's homepage,
|
||||||
|
`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
|
||||||
|
area.
|
||||||
|
|
||||||
|
If you'd like to volunteer to _work_ at translating messages, you
|
||||||
|
should become a member of the translating team for your own language.
|
||||||
|
The subscribing address is _not_ the same as the list itself, it has
|
||||||
|
`-request' appended. For example, speakers of Swedish can send a
|
||||||
|
message to `sv-request@li.org', having this message body:
|
||||||
|
|
||||||
|
subscribe
|
||||||
|
|
||||||
|
Keep in mind that team members are expected to participate
|
||||||
|
_actively_ in translations, or at solving translational difficulties,
|
||||||
|
rather than merely lurking around. If your team does not exist yet and
|
||||||
|
you want to start one, or if you are unsure about what to do or how to
|
||||||
|
get started, please write to `translation@iro.umontreal.ca' to reach the
|
||||||
|
coordinator for all translator teams.
|
||||||
|
|
||||||
|
The English team is special. It works at improving and uniformizing
|
||||||
|
the terminology in use. Proven linguistic skills are praised more than
|
||||||
|
programming skills, here.
|
||||||
|
|
||||||
|
1.5 Available Packages
|
||||||
|
======================
|
||||||
|
|
||||||
|
Languages are not equally supported in all packages. The following
|
||||||
|
matrix shows the current state of internationalization, as of October
|
||||||
|
2006. The matrix shows, in regard of each package, for which languages
|
||||||
|
PO files have been submitted to translation coordination, with a
|
||||||
|
translation percentage of at least 50%.
|
||||||
|
|
||||||
|
# Matrix here is removed!
|
||||||
|
|
||||||
|
Some counters in the preceding matrix are higher than the number of
|
||||||
|
visible blocks let us expect. This is because a few extra PO files are
|
||||||
|
used for implementing regional variants of languages, or language
|
||||||
|
dialects.
|
||||||
|
|
||||||
|
For a PO file in the matrix above to be effective, the package to
|
||||||
|
which it applies should also have been internationalized and
|
||||||
|
distributed as such by its maintainer. There might be an observable
|
||||||
|
lag between the mere existence a PO file and its wide availability in a
|
||||||
|
distribution.
|
||||||
|
|
||||||
|
If October 2006 seems to be old, you may fetch a more recent copy of
|
||||||
|
this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
|
||||||
|
matrix with full percentage details can be found at
|
||||||
|
`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
|
||||||
|
|
||||||
|
1.6 Using `gettext' in new packages
|
||||||
|
===================================
|
||||||
|
|
||||||
|
If you are writing a freely available program and want to
|
||||||
|
internationalize it you are welcome to use GNU `gettext' in your
|
||||||
|
package. Of course you have to respect the GNU Library General Public
|
||||||
|
License which covers the use of the GNU `gettext' library. This means
|
||||||
|
in particular that even non-free programs can use `libintl' as a shared
|
||||||
|
library, whereas only free software can use `libintl' as a static
|
||||||
|
library or use modified versions of `libintl'.
|
||||||
|
|
||||||
|
Once the sources are changed appropriately and the setup can handle
|
||||||
|
the use of `gettext' the only thing missing are the translations. The
|
||||||
|
Free Translation Project is also available for packages which are not
|
||||||
|
developed inside the GNU project. Therefore the information given above
|
||||||
|
applies also for every other Free Software Project. Contact
|
||||||
|
`translation@iro.umontreal.ca' to make the `.pot' files available to
|
||||||
|
the translation teams.
|
||||||
|
|
||||||
@@ -1,3 +1,173 @@
|
|||||||
|
2010-08-23 BVK Chaitanya <bvk.groups@gmail.com>
|
||||||
|
|
||||||
|
New Automake based build system for GRUB.
|
||||||
|
|
||||||
|
* ABOUT-NLS: New file.
|
||||||
|
* Makefile.am: New file. GRUB host utils' rules that doesn't fit
|
||||||
|
in Makefile.util.def file.
|
||||||
|
* Makefile.util.def: New file. Autogen build definitions file for
|
||||||
|
GRUB host utils.
|
||||||
|
* conf/Makefile.common: New file. Common variables for GRUB host
|
||||||
|
utils and target modules.
|
||||||
|
* conf/Makefile.extra-dist: New file. Extra files for make dist.
|
||||||
|
* docs/Makefile.am: New file. Automake file for docs.
|
||||||
|
* gentpl.py: New file. Python script to generate Autogen
|
||||||
|
template.
|
||||||
|
* grub-core/Makefile.am: New file. GRUB target modules' rules
|
||||||
|
that doesn't fit in Makefile.core.def file.
|
||||||
|
* grub-core/Makefile.core.def: New file. Autogen build
|
||||||
|
definitions file for GRUB target modules.
|
||||||
|
* grub-core/lib/setjmp.S: New file. Wrapper for target_cpu
|
||||||
|
specific setjmp.S file.
|
||||||
|
* po/Makefile.am: New file.
|
||||||
|
|
||||||
|
* .bzrignore: New ignores.
|
||||||
|
* INSTALL: New requirements, without Ruby.
|
||||||
|
* acinclude.m4: Use TARGET_IMG_BASE_LDOPT variable instead.
|
||||||
|
* autogen.sh: Updated to invoke autogen as necessary.
|
||||||
|
* configure.ac: Separate *FLAGS with HOST_ and TARGET_ prefixes,
|
||||||
|
and defines for Automake conditionals.
|
||||||
|
* geninit.sh: Refactoring.
|
||||||
|
|
||||||
|
* include/grub/dl.h: Allow build rules to define GRUB_MOD_* if
|
||||||
|
necessary.
|
||||||
|
* include/grub/emu/getroot.h (grub_make_system_path_relative_to_its_root):
|
||||||
|
New prototype.
|
||||||
|
|
||||||
|
* include/grub/test.h: Fix functional test modules' naming.
|
||||||
|
* grub-core/tests/example_functional_test.c: Fix test module name.
|
||||||
|
|
||||||
|
* util/misc.c: Hosted versions' of grub functions for libgrub.a
|
||||||
|
* tests/lib/unit_test.c: Remove hosted versions of grub functions.
|
||||||
|
* util/grub-editenv.c: Likewise.
|
||||||
|
* util/grub-fstest.c: Likewise.
|
||||||
|
* util/grub-mkdevicemap.c: Likewise.
|
||||||
|
* util/grub-mkfont.c: Likewise.
|
||||||
|
* util/grub-mkimage.c: Likewise.
|
||||||
|
* util/grub-mkpasswd-pbkdf2.c: Likewise.
|
||||||
|
* util/grub-probe.c: Likewise.
|
||||||
|
* util/grub-script-check.c: Likewise.
|
||||||
|
* util/i386/pc/grub-setup.c: Likewise.
|
||||||
|
* util/sparc64/ieee1275/grub-setup.c: Likewise.
|
||||||
|
|
||||||
|
* tests/util/grub-shell.in: Fix override directory path.
|
||||||
|
* util/grub-mkrescue.in: Replace @pkglib_DATA@ with files.
|
||||||
|
* util/import_gcry.py: Create Makefile.gcry.def file instead.
|
||||||
|
|
||||||
|
* util/lvm.c: Update #includes.
|
||||||
|
* util/raid.c: Likewise.
|
||||||
|
* util/resolve.c: Likewise.
|
||||||
|
* grub-core/bus/emu/pci.c: Likewise.
|
||||||
|
* grub-core/lib/posix_wrap/stdlib.h: Likewise.
|
||||||
|
* grub-core/lib/posix_wrap/string.h: Likewise.
|
||||||
|
* grub-core/kern/emu/main.c: Likewise.
|
||||||
|
|
||||||
|
* grub-core/gensymlist.sh: New file. Script for generating kernel
|
||||||
|
symbols file.
|
||||||
|
* grub-core/genmoddep.awk: Support new kernel_syms.lst format.
|
||||||
|
|
||||||
|
* grub-core/gentrigtables.c: Fix unused variable warnings.
|
||||||
|
|
||||||
|
* Makefile.in: Removed.
|
||||||
|
* conf/any-emu.rmk: Removed.
|
||||||
|
* conf/common.rmk: Removed.
|
||||||
|
* conf/i386-coreboot.rmk: Removed.
|
||||||
|
* conf/i386-efi.rmk: Removed.
|
||||||
|
* conf/i386-ieee1275.rmk: Removed.
|
||||||
|
* conf/i386-multiboot.rmk: Removed.
|
||||||
|
* conf/i386-pc.rmk: Removed.
|
||||||
|
* conf/i386-qemu.rmk: Removed.
|
||||||
|
* conf/i386.rmk: Removed.
|
||||||
|
* conf/mips-yeeloong.rmk: Removed.
|
||||||
|
* conf/mips.rmk: Removed.
|
||||||
|
* conf/powerpc-ieee1275.rmk: Removed.
|
||||||
|
* conf/sparc64-ieee1275.rmk: Removed.
|
||||||
|
* conf/tests.rmk: Removed.
|
||||||
|
* conf/x86-efi.rmk: Removed.
|
||||||
|
* conf/x86_64-efi.rmk: Removed.
|
||||||
|
* gendistlist.sh: Removed.
|
||||||
|
* geninitheader.sh: Removed.
|
||||||
|
* genkernsyms.sh.in: Removed.
|
||||||
|
* genmk.rb: Removed.
|
||||||
|
* gensymlist.sh.in: Removed.
|
||||||
|
* mkinstalldirs: Removed.
|
||||||
|
* boot: Moved ...
|
||||||
|
* grub-core/boot: ... to here.
|
||||||
|
* bus: Moved ...
|
||||||
|
* grub-core/bus: ... to here.
|
||||||
|
* commands: Moved ...
|
||||||
|
* grub-core/commands: ... to here.
|
||||||
|
* disk: Moved ...
|
||||||
|
* grub-core/disk: ... to here.
|
||||||
|
* efiemu: Moved ...
|
||||||
|
* grub-core/efiemu: ... to here.
|
||||||
|
* font: Moved ...
|
||||||
|
* grub-core/font: ... to here.
|
||||||
|
* fs: Moved ...
|
||||||
|
* grub-core/fs: ... to here.
|
||||||
|
* gencmdlist.sh: Moved ...
|
||||||
|
* grub-core/gencmdlist.sh: ... to here.
|
||||||
|
* genemuinit.sh: Moved ...
|
||||||
|
* grub-core/genemuinit.sh: ... to here.
|
||||||
|
* genemuinitheader.sh: Moved ...
|
||||||
|
* grub-core/genemuinitheader.sh: ... to here.
|
||||||
|
* genfslist.sh: Moved ...
|
||||||
|
* grub-core/genfslist.sh: ... to here.
|
||||||
|
* genhandlerlist.sh: Moved ...
|
||||||
|
* grub-core/genhandlerlist.sh: ... to here.
|
||||||
|
* genmoddep.awk: Moved ...
|
||||||
|
* grub-core/genmoddep.awk: ... to here.
|
||||||
|
* genmodsrc.sh: Moved ...
|
||||||
|
* grub-core/genmodsrc.sh: ... to here.
|
||||||
|
* genpartmaplist.sh: Moved ...
|
||||||
|
* grub-core/genpartmaplist.sh: ... to here.
|
||||||
|
* genparttoollist.sh: Moved ...
|
||||||
|
* grub-core/genparttoollist.sh: ... to here.
|
||||||
|
* genterminallist.sh: Moved ...
|
||||||
|
* grub-core/genterminallist.sh: ... to here.
|
||||||
|
* gentrigtables.c: Moved ...
|
||||||
|
* grub-core/gentrigtables.c: ... to here.
|
||||||
|
* genvideolist.sh: Moved ...
|
||||||
|
* grub-core/genvideolist.sh: ... to here.
|
||||||
|
* gettext: Moved ...
|
||||||
|
* grub-core/gettext: ... to here.
|
||||||
|
* gfxmenu: Moved ...
|
||||||
|
* grub-core/gfxmenu: ... to here.
|
||||||
|
* gnulib: Moved ...
|
||||||
|
* grub-core/gnulib: ... to here.
|
||||||
|
* hello: Moved ...
|
||||||
|
* grub-core/hello: ... to here.
|
||||||
|
* hook: Moved ...
|
||||||
|
* grub-core/hook: ... to here.
|
||||||
|
* io: Moved ...
|
||||||
|
* grub-core/io: ... to here.
|
||||||
|
* kern: Moved ...
|
||||||
|
* grub-core/kern: ... to here.
|
||||||
|
* lib: Moved ...
|
||||||
|
* grub-core/lib: ... to here.
|
||||||
|
* loader: Moved ...
|
||||||
|
* grub-core/loader: ... to here.
|
||||||
|
* mmap: Moved ...
|
||||||
|
* grub-core/mmap: ... to here.
|
||||||
|
* normal: Moved ...
|
||||||
|
* grub-core/normal: ... to here.
|
||||||
|
* partmap: Moved ...
|
||||||
|
* grub-core/partmap: ... to here.
|
||||||
|
* parttool: Moved ...
|
||||||
|
* grub-core/parttool: ... to here.
|
||||||
|
* script: Moved ...
|
||||||
|
* grub-core/script: ... to here.
|
||||||
|
* term: Moved ...
|
||||||
|
* grub-core/term: ... to here
|
||||||
|
* tests/example_functional_test.c: Moved ...
|
||||||
|
* grub-core/tests/example_functional_test.c: ... to here.
|
||||||
|
* tests/lib/functional_test.c: Moved ...
|
||||||
|
* grub-core/tests/lib/functional_test.c: ... to here.
|
||||||
|
* tests/lib/test.c: Moved ...
|
||||||
|
* grub-core/tests/lib/test.c: ... to here.
|
||||||
|
* video: Moved ...
|
||||||
|
* grub-core/video: ... to here.
|
||||||
|
|
||||||
2010-08-23 BVK Chaitanya <bvk.groups@gmail.com>
|
2010-08-23 BVK Chaitanya <bvk.groups@gmail.com>
|
||||||
|
|
||||||
Replace --enable-grub-emu-modules with grub-emu-lite.
|
Replace --enable-grub-emu-modules with grub-emu-lite.
|
||||||
|
|||||||
@@ -37,10 +37,10 @@ To build GRUB's graphical terminal (gfxterm), you need:
|
|||||||
If you use a development snapshot or want to hack on GRUB you may
|
If you use a development snapshot or want to hack on GRUB you may
|
||||||
need the following.
|
need the following.
|
||||||
|
|
||||||
* Ruby 1.6 or later
|
|
||||||
* Python 2.5.2 or later
|
* Python 2.5.2 or later
|
||||||
* Autoconf 2.60 or later
|
* Autoconf 2.60 or later
|
||||||
* Automake 1.10.1 or later
|
* Automake 1.10.1 or later
|
||||||
|
* Autogen 5.10 or later
|
||||||
|
|
||||||
Prerequisites for make-check:
|
Prerequisites for make-check:
|
||||||
|
|
||||||
|
|||||||
+85
@@ -0,0 +1,85 @@
|
|||||||
|
AUTOMAKE_OPTIONS = subdir-objects
|
||||||
|
|
||||||
|
DEPDIR = .deps-util
|
||||||
|
SUBDIRS = . grub-core po docs
|
||||||
|
|
||||||
|
include $(top_srcdir)/conf/Makefile.common
|
||||||
|
include $(top_srcdir)/conf/Makefile.extra-dist
|
||||||
|
|
||||||
|
AM_CFLAGS = $(HOST_CFLAGS)
|
||||||
|
AM_LDFLAGS = $(HOST_LDFLAGS)
|
||||||
|
AM_CPPFLAGS = $(HOST_CPPFLAGS) $(CPPFLAGS_DEFAULT)
|
||||||
|
AM_CCASFLAGS = $(HOST_CCASFLAGS) $(CCASFLAGS_DEFAULT)
|
||||||
|
|
||||||
|
CFLAGS_PROGRAM += $(CFLAGS_GNULIB)
|
||||||
|
LDFLAGS_PROGRAM += $(LDFLAGS_GNULIB)
|
||||||
|
CPPFLAGS_PROGRAM += $(CPPFLAGS_GNULIB)
|
||||||
|
CCASFLAGS_PROGRAM += $(CCASFLAGS_GNULIB)
|
||||||
|
|
||||||
|
include $(srcdir)/Makefile.util.am
|
||||||
|
|
||||||
|
# XXX Use Automake's LEX & YACC support
|
||||||
|
grub_script.tab.h: $(top_srcdir)/grub-core/script/parser.y
|
||||||
|
$(YACC) -d -p grub_script_yy -b grub_script $(top_srcdir)/grub-core/script/parser.y
|
||||||
|
grub_script.tab.c: grub_script.tab.h
|
||||||
|
CLEANFILES += grub_script.tab.c grub_script.tab.h
|
||||||
|
|
||||||
|
# For the lexer.
|
||||||
|
grub_script.yy.h: $(top_srcdir)/grub-core/script/yylex.l
|
||||||
|
$(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $(top_srcdir)/grub-core/script/yylex.l
|
||||||
|
grub_script.yy.c: grub_script.yy.h
|
||||||
|
CLEANFILES += grub_script.yy.c grub_script.yy.h
|
||||||
|
|
||||||
|
# For libgrub.a
|
||||||
|
libgrub.pp: grub_script.tab.h grub_script.yy.h $(libgrub_a_SOURCES)
|
||||||
|
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrub_a_CPPFLAGS) $(CPPFLAGS) \
|
||||||
|
-D'GRUB_MOD_INIT(x)=@MARKER@x@' $^ > $@ || (rm -f $@; exit 1)
|
||||||
|
CLEANFILES += libgrub.pp
|
||||||
|
|
||||||
|
libgrub_a_init.lst: libgrub.pp
|
||||||
|
cat $< | grep '@MARKER@' | sed 's/@MARKER@\(.*\)@/\1/g' | sort -u > $@ || (rm -f $@; exit 1)
|
||||||
|
CLEANFILES += libgrub_a_init.lst
|
||||||
|
|
||||||
|
libgrub_a_init.c: libgrub_a_init.lst $(top_srcdir)/geninit.sh
|
||||||
|
sh $(top_srcdir)/geninit.sh `cat $<` > $@ || (rm -f $@; exit 1)
|
||||||
|
CLEANFILES += libgrub_a_init.c
|
||||||
|
|
||||||
|
if COND_GRUB_MKFONT
|
||||||
|
if COND_HAVE_FONT_SOURCE
|
||||||
|
grubdata_DATA = unicode.pf2 ascii.pf2 ascii.h widthspec.h
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
unicode.pf2: $(FONT_SOURCE) grub-mkfont
|
||||||
|
$(builddir)/grub-mkfont -o $@ $(FONT_SOURCE)
|
||||||
|
CLEANFILES += unicode.pf2
|
||||||
|
|
||||||
|
# Arrows and lines are needed to draw the menu, so always include them
|
||||||
|
UNICODE_ARROWS=0x2190-0x2193
|
||||||
|
UNICODE_LINES=0x2501-0x251B
|
||||||
|
|
||||||
|
ascii.pf2: $(FONT_SOURCE) grub-mkfont
|
||||||
|
$(builddir)/grub-mkfont -o $@ $(FONT_SOURCE) -r 0x0-0x7f,$(UNICODE_ARROWS),$(UNICODE_LINES)
|
||||||
|
CLEANFILES += ascii.pf2
|
||||||
|
|
||||||
|
ascii.bitmaps: $(FONT_SOURCE) grub-mkfont
|
||||||
|
$(builddir)/grub-mkfont --ascii-bitmaps -o $@ $(FONT_SOURCE)
|
||||||
|
CLEANFILES += ascii.bitmaps
|
||||||
|
|
||||||
|
ascii.h: ascii.bitmaps grub-bin2h
|
||||||
|
$(builddir)/grub-bin2h ascii_bitmaps < $< > $@
|
||||||
|
CLEANFILES += ascii.h $(top_builddir)/grub-core/include/ascii.h
|
||||||
|
|
||||||
|
widthspec.bin: $(FONT_SOURCE) grub-mkfont
|
||||||
|
$(builddir)/grub-mkfont --width-spec -o $@ $(FONT_SOURCE)
|
||||||
|
CLEANFILES += widthspec.bin
|
||||||
|
|
||||||
|
widthspec.h: widthspec.bin grub-bin2h
|
||||||
|
$(builddir)/grub-bin2h widthspec < $< > $@
|
||||||
|
CLEANFILES += widthspec.h
|
||||||
|
|
||||||
|
# Install config.h into platformdir
|
||||||
|
platform_HEADERS = config.h
|
||||||
|
|
||||||
|
pkglib_DATA += grub-mkconfig_lib
|
||||||
|
pkglib_DATA += update-grub_lib
|
||||||
-567
@@ -1,567 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
#
|
|
||||||
# Copyright (C) 1994,1995,1996,1997,1998,1999,2000,2001,2002,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc.
|
|
||||||
#
|
|
||||||
# This Makefile.in is free software; the author
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
### The configure script will replace these variables.
|
|
||||||
|
|
||||||
SHELL = /bin/sh
|
|
||||||
|
|
||||||
@SET_MAKE@
|
|
||||||
|
|
||||||
transform = @program_transform_name@
|
|
||||||
|
|
||||||
srcdir = @srcdir@
|
|
||||||
builddir = @builddir@
|
|
||||||
top_srcdir = @top_srcdir@
|
|
||||||
VPATH = @srcdir@
|
|
||||||
prefix = @prefix@
|
|
||||||
exec_prefix = @exec_prefix@
|
|
||||||
|
|
||||||
bindir = @bindir@
|
|
||||||
sbindir = @sbindir@
|
|
||||||
libexecdir = @libexecdir@
|
|
||||||
datarootdir = @datarootdir@
|
|
||||||
datadir = @datadir@
|
|
||||||
sysconfdir = @sysconfdir@
|
|
||||||
sharedstatedir = @sharedstatedir@
|
|
||||||
localstatedir = @localstatedir@
|
|
||||||
libdir = @libdir@
|
|
||||||
localedir = @localedir@
|
|
||||||
infodir = @infodir@
|
|
||||||
mandir = @mandir@
|
|
||||||
includedir = @includedir@
|
|
||||||
pkgdatadir = $(datadir)/`echo @PACKAGE_TARNAME@ | sed '$(transform)'`
|
|
||||||
pkglibdir = $(libdir)/`echo @PACKAGE_TARNAME@/$(target_cpu)-$(platform) | sed '$(transform)'`
|
|
||||||
|
|
||||||
# Internationalization library.
|
|
||||||
LIBINTL = @LIBINTL@
|
|
||||||
|
|
||||||
# Util library.
|
|
||||||
LIBUTIL = @LIBUTIL@
|
|
||||||
|
|
||||||
XGETTEXT = @XGETTEXT@
|
|
||||||
MSGMERGE = @MSGMERGE@
|
|
||||||
MSGFMT = @MSGFMT@
|
|
||||||
|
|
||||||
ifeq (@USE_NLS@,yes)
|
|
||||||
LINGUAS = $(shell for i in $(srcdir)/po/*.po ; do \
|
|
||||||
if test -e $$i ; then echo $$i ; fi ; \
|
|
||||||
done | sed -e "s,.*/po/\(.*\)\.po$$,\1,")
|
|
||||||
else
|
|
||||||
LINGUAS =
|
|
||||||
endif
|
|
||||||
|
|
||||||
PACKAGE = @PACKAGE@
|
|
||||||
PACKAGE_NAME = @PACKAGE_NAME@
|
|
||||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
|
||||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
|
||||||
PACKAGE_STRING = @PACKAGE_STRING@
|
|
||||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
|
||||||
|
|
||||||
host_os = @host_os@
|
|
||||||
host_kernel = @host_kernel@
|
|
||||||
host_cpu = @host_cpu@
|
|
||||||
|
|
||||||
target_cpu = @target_cpu@
|
|
||||||
platform = @platform@
|
|
||||||
|
|
||||||
INSTALL = @INSTALL@
|
|
||||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
|
||||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
|
||||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
|
||||||
MKDIR_P = @MKDIR_P@
|
|
||||||
|
|
||||||
mkinstalldirs = $(srcdir)/mkinstalldirs
|
|
||||||
|
|
||||||
LIBS = @LIBS@ $(LIBINTL) $(LIBUTIL)
|
|
||||||
|
|
||||||
CC = @CC@
|
|
||||||
CFLAGS = @CFLAGS@
|
|
||||||
POSIX_CFLAGS = -I$(srcdir)/lib/posix_wrap
|
|
||||||
GNULIB_UTIL_CFLAGS = -Wno-undef -Wno-sign-compare -Wno-unused -D_GL_UNUSED="__attribute__ ((unused))" -I$(srcdir)/gnulib
|
|
||||||
GNULIB_CFLAGS = $(GNULIB_UTIL_CFLAGS) $(POSIX_CFLAGS)
|
|
||||||
ASFLAGS = @ASFLAGS@
|
|
||||||
LDFLAGS = @LDFLAGS@ $(LIBS)
|
|
||||||
CPPFLAGS = @CPPFLAGS@ -I$(builddir) -I$(builddir)/include -I$(srcdir)/gnulib -I$(srcdir)/include -Wall -W \
|
|
||||||
-DGRUB_PKGLIBROOTDIR=\"$(libdir)/`echo @PACKAGE_TARNAME@ | sed '$(transform)'`\" -DLOCALEDIR=\"$(localedir)\"
|
|
||||||
TARGET_CC = @TARGET_CC@
|
|
||||||
TARGET_CFLAGS = -ffreestanding @TARGET_CFLAGS@
|
|
||||||
TARGET_ASFLAGS = -nostdinc -fno-builtin @TARGET_ASFLAGS@
|
|
||||||
TARGET_MODULE_FORMAT = @TARGET_MODULE_FORMAT@
|
|
||||||
TARGET_APPLE_CC = @TARGET_APPLE_CC@
|
|
||||||
OBJCONV = @OBJCONV@
|
|
||||||
TARGET_CPPFLAGS = @TARGET_CPPFLAGS@ -I$(srcdir)/include -I$(builddir) -I$(builddir)/include \
|
|
||||||
-Wall -W
|
|
||||||
TARGET_LDFLAGS = -nostdlib -static-libgcc @TARGET_LDFLAGS@
|
|
||||||
TARGET_IMG_LDSCRIPT = @TARGET_IMG_LDSCRIPT@
|
|
||||||
TARGET_IMG_LDFLAGS = -nostdlib @TARGET_IMG_LDFLAGS@
|
|
||||||
TARGET_IMG_CFLAGS = @TARGET_IMG_CFLAGS@
|
|
||||||
TARGET_OBJ2ELF = @TARGET_OBJ2ELF@
|
|
||||||
kernel_img_LDFLAGS = -lgcc
|
|
||||||
EXEEXT = @EXEEXT@
|
|
||||||
OBJCOPY = @OBJCOPY@
|
|
||||||
STRIP = @STRIP@
|
|
||||||
NM = @NM@
|
|
||||||
RUBY = @RUBY@
|
|
||||||
MAKEINFO = @MAKEINFO@
|
|
||||||
ifeq (, $(MAKEINFO))
|
|
||||||
MAKEINFO = true
|
|
||||||
endif
|
|
||||||
HELP2MAN = @HELP2MAN@
|
|
||||||
ifeq (, $(HELP2MAN))
|
|
||||||
HELP2MAN = true
|
|
||||||
else
|
|
||||||
HELP2MAN := LANG=C $(HELP2MAN) --no-info --source=FSF
|
|
||||||
endif
|
|
||||||
AWK = @AWK@
|
|
||||||
LIBCURSES = @LIBCURSES@
|
|
||||||
LIBUSB = @LIBUSB@
|
|
||||||
LIBSDL = @LIBSDL@
|
|
||||||
LIBPCIACCESS = @LIBPCIACCESS@
|
|
||||||
LEX = @LEX@
|
|
||||||
YACC = @YACC@
|
|
||||||
FONT_SOURCE = @FONT_SOURCE@
|
|
||||||
|
|
||||||
# Options.
|
|
||||||
enable_grub_emu_usb = @enable_grub_emu_usb@
|
|
||||||
enable_grub_emu_sdl = @enable_grub_emu_sdl@
|
|
||||||
enable_grub_emu_pci = @enable_grub_emu_pci@
|
|
||||||
enable_grub_fstest = @enable_grub_fstest@
|
|
||||||
enable_grub_pe2elf = @enable_grub_pe2elf@
|
|
||||||
enable_grub_mkfont = @enable_grub_mkfont@
|
|
||||||
freetype_cflags = @freetype_cflags@
|
|
||||||
freetype_libs = @freetype_libs@
|
|
||||||
enable_efiemu = @enable_efiemu@
|
|
||||||
|
|
||||||
### General variables.
|
|
||||||
|
|
||||||
RMKFILES = $(wildcard $(srcdir)/conf/*.rmk)
|
|
||||||
|
|
||||||
MKFILES = $(patsubst %.rmk,%.mk,$(RMKFILES))
|
|
||||||
|
|
||||||
PKGLIB = $(pkglib_IMAGES) $(pkglib_MODULES) $(pkglib_PROGRAMS) \
|
|
||||||
$(pkglib_DATA) $(pkglib_BUILDDIR)
|
|
||||||
PKGDATA = $(pkgdata_DATA)
|
|
||||||
PROGRAMS = $(bin_UTILITIES) $(sbin_UTILITIES)
|
|
||||||
SCRIPTS = $(bin_SCRIPTS) $(sbin_SCRIPTS) $(grub-mkconfig_SCRIPTS) \
|
|
||||||
$(lib_SCRIPTS)
|
|
||||||
INFOS = $(info_INFOS)
|
|
||||||
|
|
||||||
CLEANFILES =
|
|
||||||
MOSTLYCLEANFILES =
|
|
||||||
DISTCLEANFILES = config.status config.cache config.log config.h \
|
|
||||||
Makefile stamp-h stamp-h1 include/grub/cpu include/grub/machine \
|
|
||||||
gensymlist.sh genkernsyms.sh build_env.mk \
|
|
||||||
docs/grub.info docs/version.texi docs/stamp-vti
|
|
||||||
|
|
||||||
MAINTAINER_CLEANFILES = $(srcdir)/configure $(srcdir)/aclocal.m4 \
|
|
||||||
$(MKFILES) $(srcdir)/config.guess \
|
|
||||||
$(srcdir)/config.sub $(srcdir)/install-sh $(srcdir)/missing \
|
|
||||||
$(srcdir)/DISTLIST $(srcdir)/config.h.in $(srcdir)/stamp-h.in \
|
|
||||||
$(srcdir)/unidata.c \
|
|
||||||
$(INFOS)
|
|
||||||
|
|
||||||
# The default target.
|
|
||||||
all: all-local
|
|
||||||
|
|
||||||
### Include an arch-specific Makefile.
|
|
||||||
$(addprefix $(srcdir)/,$(MKFILES)): %.mk: %.rmk genmk.rb
|
|
||||||
if test "x$(RUBY)" = x; then \
|
|
||||||
touch $@; \
|
|
||||||
else \
|
|
||||||
$(RUBY) $(srcdir)/genmk.rb < $< > $@; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
ifeq ($(platform), emu)
|
|
||||||
include $(srcdir)/conf/any-emu.mk
|
|
||||||
else
|
|
||||||
include $(srcdir)/conf/$(target_cpu)-$(platform).mk
|
|
||||||
# For tests.
|
|
||||||
include $(srcdir)/conf/tests.mk
|
|
||||||
# For external modules.
|
|
||||||
-include $(wildcard $(GRUB_CONTRIB)/*/conf/common.mk)
|
|
||||||
endif
|
|
||||||
|
|
||||||
### General targets.
|
|
||||||
|
|
||||||
CLEANFILES += $(pkglib_DATA) $(pkgdata_DATA) po/*.mo
|
|
||||||
pkglib_DATA += moddep.lst command.lst fs.lst partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst
|
|
||||||
moddep.lst: $(DEFSYMFILES) $(UNDSYMFILES) genmoddep.awk
|
|
||||||
cat $(DEFSYMFILES) /dev/null \
|
|
||||||
| $(AWK) -f $(srcdir)/genmoddep.awk $(UNDSYMFILES) > $@ \
|
|
||||||
|| (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
command.lst: $(COMMANDFILES)
|
|
||||||
cat $^ /dev/null | sort > $@
|
|
||||||
|
|
||||||
fs.lst: $(FSFILES)
|
|
||||||
cat $^ /dev/null | sort > $@
|
|
||||||
|
|
||||||
partmap.lst: $(PARTMAPFILES)
|
|
||||||
cat $^ /dev/null | sort > $@
|
|
||||||
|
|
||||||
handler.lst: $(HANDLERFILES)
|
|
||||||
cat $^ /dev/null | sort > $@
|
|
||||||
|
|
||||||
terminal.lst: $(TERMINALFILES)
|
|
||||||
cat $^ /dev/null | sort > $@
|
|
||||||
|
|
||||||
parttool.lst: $(PARTTOOLFILES)
|
|
||||||
cat $^ /dev/null | sort | uniq > $@
|
|
||||||
|
|
||||||
video.lst: $(VIDEOFILES)
|
|
||||||
cat $^ /dev/null | sort | uniq > $@
|
|
||||||
|
|
||||||
crypto.lst: lib/libgcrypt-grub/cipher/crypto.lst
|
|
||||||
cp $^ $@
|
|
||||||
|
|
||||||
ifneq (true, $(MAKEINFO))
|
|
||||||
info_INFOS += docs/grub.info
|
|
||||||
endif
|
|
||||||
|
|
||||||
MOSTLYCLEANFILES += vti.tmp
|
|
||||||
MAINTAINER_CLEANFILES += docs/stamp-vti docs/version.texi
|
|
||||||
docs/version.texi: docs/stamp-vti
|
|
||||||
docs/stamp-vti: docs/grub.texi configure.ac
|
|
||||||
$(MKDIR_P) docs
|
|
||||||
(set `$(SHELL) $(srcdir)/docs/mdate-sh $<`; \
|
|
||||||
echo "@set UPDATED $$1 $$2 $$3"; \
|
|
||||||
echo "@set UPDATED-MONTH $$2 $$3"; \
|
|
||||||
echo "@set EDITION $(PACKAGE_VERSION)"; \
|
|
||||||
echo "@set VERSION $(PACKAGE_VERSION)") > vti.tmp
|
|
||||||
@cmp -s vti.tmp $(builddir)/docs/version.texi \
|
|
||||||
|| (echo "Updating $(builddir)/docs/version.texi"; \
|
|
||||||
cp vti.tmp $(builddir)/docs/version.texi)
|
|
||||||
-@rm -f vti.tmp
|
|
||||||
@cp $(builddir)/docs/version.texi $@
|
|
||||||
|
|
||||||
docs/grub.info: docs/grub.texi docs/version.texi docs/fdl.texi
|
|
||||||
$(MKDIR_P) docs
|
|
||||||
$(MAKEINFO) -P $(builddir)/docs --no-split $< -o $@
|
|
||||||
|
|
||||||
ifeq (, $(FONT_SOURCE))
|
|
||||||
else
|
|
||||||
|
|
||||||
ifeq ($(enable_grub_mkfont),yes)
|
|
||||||
|
|
||||||
pkgdata_DATA += unicode.pf2 ascii.pf2 ascii.h
|
|
||||||
CLEANFILES += ascii.bitmaps
|
|
||||||
|
|
||||||
# Arrows and lines are needed to draw the menu, so we always include them
|
|
||||||
UNICODE_ARROWS=0x2190-0x2193
|
|
||||||
UNICODE_LINES=0x2501-0x251B
|
|
||||||
|
|
||||||
unicode.pf2: $(FONT_SOURCE) grub-mkfont
|
|
||||||
$(builddir)/grub-mkfont -o $@ $(FONT_SOURCE)
|
|
||||||
|
|
||||||
ascii.pf2: $(FONT_SOURCE) grub-mkfont
|
|
||||||
$(builddir)/grub-mkfont -o $@ $(FONT_SOURCE) -r 0x0-0x7f,$(UNICODE_ARROWS),$(UNICODE_LINES)
|
|
||||||
|
|
||||||
ascii.bitmaps: $(FONT_SOURCE) grub-mkfont
|
|
||||||
$(builddir)/grub-mkfont --ascii-bitmaps -o $@ $(FONT_SOURCE)
|
|
||||||
|
|
||||||
ascii.h: ascii.bitmaps grub-bin2h
|
|
||||||
$(builddir)/grub-bin2h ascii_bitmaps < $< > $@
|
|
||||||
|
|
||||||
widthspec.bin: $(FONT_SOURCE) grub-mkfont
|
|
||||||
$(builddir)/grub-mkfont --width-spec -o $@ $(FONT_SOURCE)
|
|
||||||
|
|
||||||
widthspec.h: widthspec.bin grub-bin2h
|
|
||||||
$(builddir)/grub-bin2h widthspec < $< > $@
|
|
||||||
|
|
||||||
TARGET_CFLAGS += -DUSE_ASCII_FAILBACK=1 -DHAVE_UNIFONT_WIDTHSPEC=1
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Used for building modules externally
|
|
||||||
pkglib_BUILDDIR += build_env.mk
|
|
||||||
build_env.mk: Makefile
|
|
||||||
(\
|
|
||||||
echo "TARGET_CC=$(TARGET_CC)" ; \
|
|
||||||
echo "TARGET_CFLAGS=$(TARGET_CFLAGS)" ; \
|
|
||||||
echo "TARGET_ASFLAGS=$(TARGET_ASFLAGS)" ; \
|
|
||||||
echo "TARGET_CPPFLAGS=$(TARGET_CPPFLAGS) -I$(pkglibdir) -I$(includedir)" ; \
|
|
||||||
echo "STRIP=$(STRIP)" ; \
|
|
||||||
echo "OBJCONV=$(OBJCONV)" ; \
|
|
||||||
echo "TARGET_MODULE_FORMAT=$(TARGET_MODULE_FORMAT)" ; \
|
|
||||||
echo "TARGET_APPLE_CC=$(TARGET_APPLE_CC)" ; \
|
|
||||||
echo "COMMON_ASFLAGS=$(COMMON_ASFLAGS)" ; \
|
|
||||||
echo "COMMON_CFLAGS=$(COMMON_CFLAGS)" ; \
|
|
||||||
echo "COMMON_LDFLAGS=$(COMMON_LDFLAGS)"\
|
|
||||||
) > $@
|
|
||||||
pkglib_BUILDDIR += config.h grub_script.tab.h
|
|
||||||
|
|
||||||
all-local: $(PROGRAMS) $(GRUB_EMU) $(GRUB_EMU_LITE) $(PKGLIB) $(PKGDATA) $(SCRIPTS) $(INFOS) $(MKFILES) $(foreach lang, $(LINGUAS), po/$(lang).mo)
|
|
||||||
|
|
||||||
install: install-local
|
|
||||||
|
|
||||||
install-local: all
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
|
|
||||||
rm -f $(DESTDIR)$(pkglibdir)/*
|
|
||||||
@list='$(PKGLIB)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
$(INSTALL_DATA) $$dir$$file $(DESTDIR)$(pkglibdir)/$$dest; \
|
|
||||||
done
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
|
|
||||||
@list='$(PKGDATA)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
$(INSTALL_DATA) $$dir$$file $(DESTDIR)$(pkgdatadir)/$$dest; \
|
|
||||||
done
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)/man1
|
|
||||||
@list='$(bin_UTILITIES) $(GRUB_EMU) $(GRUB_EMU_LITE)'; for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
$(INSTALL_PROGRAM) $$dir$$file $(DESTDIR)$(bindir)/$$dest; \
|
|
||||||
PATH="$(builddir):$$PATH" $(HELP2MAN) --section=1 -i $(srcdir)/docs/man/$$file.h2m -o $(DESTDIR)$(mandir)/man1/$$dest.1 $$file; \
|
|
||||||
done
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(sbindir) $(DESTDIR)$(mandir)/man8
|
|
||||||
@list='$(sbin_UTILITIES)'; for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
$(INSTALL_PROGRAM) $$dir$$file $(DESTDIR)$(sbindir)/$$dest; \
|
|
||||||
PATH="$(builddir):$$PATH" $(HELP2MAN) --section=8 -i $(srcdir)/docs/man/$$file.h2m -o $(DESTDIR)$(mandir)/man8/$$dest.8 $$file; \
|
|
||||||
done
|
|
||||||
@list='$(bin_SCRIPTS)'; for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
$(INSTALL_SCRIPT) $$dir$$file $(DESTDIR)$(bindir)/$$dest; \
|
|
||||||
PATH="$(builddir):$$PATH" $(HELP2MAN) --section=1 -i $(srcdir)/docs/man/$$file.h2m -o $(DESTDIR)$(mandir)/man1/$$dest.1 $$file; \
|
|
||||||
done
|
|
||||||
@list='$(sbin_SCRIPTS)'; for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
$(INSTALL_SCRIPT) $$dir$$file $(DESTDIR)$(sbindir)/$$dest; \
|
|
||||||
PATH="$(builddir):$$PATH" $(HELP2MAN) --section=8 -i $(srcdir)/docs/man/$$file.h2m -o $(DESTDIR)$(mandir)/man8/$$dest.8 $$file; \
|
|
||||||
done
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(sysconfdir)/grub.d
|
|
||||||
@list='$(grub-mkconfig_SCRIPTS)'; for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
$(INSTALL_SCRIPT) $$dir$$file $(DESTDIR)$(sysconfdir)/grub.d/$$dest; \
|
|
||||||
done
|
|
||||||
@list='$(grub-mkconfig_DATA)'; for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
$(INSTALL_DATA) $$dir$$file $(DESTDIR)$(sysconfdir)/grub.d/$$dest; \
|
|
||||||
done
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(libdir)/grub
|
|
||||||
@list='$(lib_SCRIPTS)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
$(INSTALL_DATA) $$dir$$file $(DESTDIR)$(libdir)/grub/$$dest; \
|
|
||||||
done
|
|
||||||
@langs='$(LINGUAS)'; \
|
|
||||||
for lang in $$langs; do \
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)/$(datadir)/locale/$$lang/LC_MESSAGES; \
|
|
||||||
file="po/$$lang.mo"; \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
$(INSTALL_DATA) $$dir$$file $(DESTDIR)/$(datadir)/locale/$$lang/LC_MESSAGES/$(PACKAGE).mo; \
|
|
||||||
done
|
|
||||||
$(SHELL) $(mkinstalldirs) $(DESTDIR)$(infodir)
|
|
||||||
@list='$(info_INFOS)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
$(INSTALL_DATA) $$dir$$file $(DESTDIR)$(infodir); \
|
|
||||||
if (install-info --version && \
|
|
||||||
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
|
||||||
install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$dest" || :; \
|
|
||||||
fi; \
|
|
||||||
done
|
|
||||||
|
|
||||||
install-strip:
|
|
||||||
$(MAKE) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" install
|
|
||||||
|
|
||||||
uninstall:
|
|
||||||
@list='$(PKGLIB)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
rm -f $(DESTDIR)$(pkglibdir)/$$dest; \
|
|
||||||
done
|
|
||||||
@list='$(PKGDATA)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
rm -f $(DESTDIR)$(pkgdatadir)/$$dest; \
|
|
||||||
done
|
|
||||||
@list='$(bin_UTILITIES) $(bin_SCRIPTS) $(GRUB_EMU) $(GRUB_EMU_LITE)'; for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
rm -f $(DESTDIR)$(bindir)/$$dest; \
|
|
||||||
rm -f $(DESTDIR)$(mandir)/man1/$$dest.1; \
|
|
||||||
done
|
|
||||||
@list='$(sbin_UTILITIES) $(sbin_SCRIPTS)'; for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
rm -f $(DESTDIR)$(sbindir)/$$dest; \
|
|
||||||
rm -f $(DESTDIR)$(mandir)/man8/$$dest.8; \
|
|
||||||
done
|
|
||||||
@list='$(grub-mkconfig_SCRIPTS) $(grub-mkconfig_DATA)'; for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,' | sed '$(transform)'`"; \
|
|
||||||
rm -f $(DESTDIR)$(sysconfdir)/grub.d/$$dest; \
|
|
||||||
done
|
|
||||||
@list='$(lib_SCRIPTS)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
rm -f $(DESTDIR)$(libdir)/grub/$$dest; \
|
|
||||||
done
|
|
||||||
@list='$(info_INFOS)'; \
|
|
||||||
for file in $$list; do \
|
|
||||||
dest="`echo $$file | sed 's,.*/,,'`"; \
|
|
||||||
if (install-info --version && \
|
|
||||||
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
|
||||||
if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$dest"; then \
|
|
||||||
:; \
|
|
||||||
else \
|
|
||||||
test ! -f "$(DESTDIR)$(infodir)/$$dest" || exit 1; \
|
|
||||||
fi; \
|
|
||||||
fi; \
|
|
||||||
rm -f $(DESTDIR)$(infodir)/$$dest; \
|
|
||||||
done
|
|
||||||
|
|
||||||
clean: $(CLEAN_IMAGE_TARGETS) $(CLEAN_MODULE_TARGETS) $(CLEAN_UTILITY_TARGETS)
|
|
||||||
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
|
||||||
|
|
||||||
mostlyclean: clean $(MOSTLYCLEAN_IMAGE_TARGETS) $(MOSTLYCLEAN_MODULE_TARGETS) $(MOSTLYCLEAN_UTILITY_TARGETS)
|
|
||||||
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
|
||||||
|
|
||||||
distclean: mostlyclean
|
|
||||||
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
|
|
||||||
-rm -rf $(srcdir)/autom4te.cache
|
|
||||||
|
|
||||||
maintainer-clean: distclean
|
|
||||||
-test -z "$(MAINTAINER_CLEANFILES)" || rm -f $(MAINTAINER_CLEANFILES)
|
|
||||||
-rmdir $(srcdir)/lib/libgcrypt-grub/cipher
|
|
||||||
-rmdir $(srcdir)/lib/libgcrypt-grub
|
|
||||||
|
|
||||||
info:
|
|
||||||
|
|
||||||
dvi:
|
|
||||||
|
|
||||||
distdir=$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)
|
|
||||||
|
|
||||||
DISTLIST: gendistlist.sh
|
|
||||||
$(SHELL) $(srcdir)/gendistlist.sh > $(srcdir)/DISTLIST
|
|
||||||
|
|
||||||
distdir: DISTLIST
|
|
||||||
-chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
|
|
||||||
$(SHELL) $(mkinstalldirs) $(distdir)
|
|
||||||
for i in `cat $(srcdir)/DISTLIST`; do \
|
|
||||||
dir=`echo "$$i" | sed 's:/[^/]*$$::'`; \
|
|
||||||
if test -d $(srcdir)/$$dir; then \
|
|
||||||
$(SHELL) $(mkinstalldirs) $(distdir)/$$dir; \
|
|
||||||
fi; \
|
|
||||||
cp -p $(srcdir)/$$i $(distdir)/$$i || exit 1; \
|
|
||||||
done
|
|
||||||
chmod -R a+r $(distdir)
|
|
||||||
|
|
||||||
GZIP_ENV = --best
|
|
||||||
|
|
||||||
dist: distdir
|
|
||||||
tar chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
|
||||||
-chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
|
|
||||||
|
|
||||||
distcheck: dist
|
|
||||||
-chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
|
|
||||||
GZIP=$(GZIP_ENV) gzip -cd $(distdir).tar.gz | tar xf -
|
|
||||||
chmod -R a-w $(distdir)
|
|
||||||
chmod a+w $(distdir)
|
|
||||||
mkdir $(distdir)/=build
|
|
||||||
mkdir $(distdir)/=inst
|
|
||||||
chmod a-w $(distdir)
|
|
||||||
dc_instdir=`CDPATH=: && cd $(distdir)/=inst && pwd` \
|
|
||||||
&& cd $(distdir)/=build \
|
|
||||||
&& $(SHELL) ../configure --srcdir=.. --prefix=$$dc_instdir \
|
|
||||||
&& $(MAKE) all dvi check install && $(MAKE) uninstall \
|
|
||||||
&& (test `find $$dc_instdir -type f -print | wc -l` -le 1 \
|
|
||||||
|| (echo "Error: files left after uninstall" 1>&2; \
|
|
||||||
exit 1)) \
|
|
||||||
&& $(MAKE) dist && $(MAKE) distclean \
|
|
||||||
&& rm -f $(distdir).tar.gz \
|
|
||||||
&& (test `find . -type f -print | wc -l` -eq 0 \
|
|
||||||
|| (echo "Error: files left after distclean" 1>&2; \
|
|
||||||
exit 1))
|
|
||||||
-chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir)
|
|
||||||
@echo "$(distdir).tar.gz is ready for distribution" | \
|
|
||||||
sed 'h;s/./=/g;p;x;p;x'
|
|
||||||
|
|
||||||
check: all $(UNIT_TESTS) $(FUNCTIONAL_TESTS) $(SCRIPTED_TESTS)
|
|
||||||
@list="$(UNIT_TESTS)"; \
|
|
||||||
set -e; \
|
|
||||||
for file in $$list; do \
|
|
||||||
$(builddir)/$$file; \
|
|
||||||
done
|
|
||||||
@list="$(FUNCTIONAL_TESTS)"; \
|
|
||||||
set -e; \
|
|
||||||
for file in $$list; do \
|
|
||||||
mod=`basename $$file .mod`; \
|
|
||||||
echo "insmod functional_test; insmod $$mod; functional_test" \
|
|
||||||
| $(builddir)/grub-shell; \
|
|
||||||
done
|
|
||||||
@list="$(SCRIPTED_TESTS)"; \
|
|
||||||
set -e; \
|
|
||||||
for file in $$list; do \
|
|
||||||
$(builddir)/$$file; \
|
|
||||||
done
|
|
||||||
|
|
||||||
.SUFFIXES:
|
|
||||||
.SUFFIXES: .c .o .S .d
|
|
||||||
|
|
||||||
# Regenerate configure and Makefile automatically.
|
|
||||||
$(srcdir)/aclocal.m4: configure.ac acinclude.m4
|
|
||||||
cd $(srcdir) && aclocal
|
|
||||||
|
|
||||||
$(srcdir)/configure: configure.ac aclocal.m4
|
|
||||||
cd $(srcdir) && autoconf
|
|
||||||
|
|
||||||
$(srcdir)/config.h.in: stamp-h.in
|
|
||||||
$(srcdir)/stamp-h.in: configure.ac aclocal.m4
|
|
||||||
cd $(srcdir) && autoheader
|
|
||||||
echo timestamp > $(srcdir)/stamp-h.in
|
|
||||||
|
|
||||||
config.h: stamp-h
|
|
||||||
stamp-h: config.h.in config.status
|
|
||||||
$(SHELL) ./config.status
|
|
||||||
|
|
||||||
Makefile: Makefile.in config.status
|
|
||||||
$(SHELL) ./config.status
|
|
||||||
|
|
||||||
config.status: configure
|
|
||||||
$(SHELL) ./config.status --recheck
|
|
||||||
|
|
||||||
gensymlist.sh: gensymlist.sh.in config.status
|
|
||||||
$(SHELL) ./config.status
|
|
||||||
|
|
||||||
genkernsyms.sh: genkernsyms.sh.in config.status
|
|
||||||
$(SHELL) ./config.status
|
|
||||||
|
|
||||||
$(srcdir)/po/$(PACKAGE).pot: po/POTFILES po/POTFILES-shell
|
|
||||||
cd $(srcdir) && $(XGETTEXT) -ctranslate --from-code=utf-8 -o po/$(PACKAGE).pot -f po/POTFILES --keyword=_ --keyword=N_
|
|
||||||
cd $(srcdir) && $(XGETTEXT) -ctranslate --from-code=utf-8 -o po/$(PACKAGE).pot -f po/POTFILES-shell -j --language=Shell
|
|
||||||
|
|
||||||
$(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po): po/$(PACKAGE).pot
|
|
||||||
$(MSGMERGE) -U $@ $^
|
|
||||||
|
|
||||||
po/%.mo: po/%.po
|
|
||||||
$(MKDIR_P) $$(dirname $@)
|
|
||||||
$(MSGFMT) -c --statistics -o $@ $^
|
|
||||||
|
|
||||||
.PHONY: all install install-strip uninstall clean mostlyclean distclean
|
|
||||||
.PHONY: maintainer-clean info dvi dist check
|
|
||||||
|
|
||||||
# Prevent an overflow.
|
|
||||||
.NOEXPORT:
|
|
||||||
|
|
||||||
.DELETE_ON_ERROR:
|
|
||||||
@@ -0,0 +1,510 @@
|
|||||||
|
AutoGen definitions Makefile.tpl;
|
||||||
|
|
||||||
|
library = {
|
||||||
|
name = libgrub.a;
|
||||||
|
cflags = '$(CFLAGS_GCRY)';
|
||||||
|
cppflags = '$(CPPFLAGS_GCRY)';
|
||||||
|
|
||||||
|
common_nodist = grub_script.tab.c;
|
||||||
|
common_nodist = grub_script.yy.c;
|
||||||
|
common_nodist = libgrub_a_init.c;
|
||||||
|
common_nodist = grub_script.yy.h;
|
||||||
|
common_nodist = grub_script.tab.h;
|
||||||
|
|
||||||
|
common = grub-core/gnulib/error.c;
|
||||||
|
common = grub-core/gnulib/fnmatch.c;
|
||||||
|
common = grub-core/gnulib/getdelim.c;
|
||||||
|
common = grub-core/gnulib/getline.c;
|
||||||
|
common = grub-core/gnulib/getopt1.c;
|
||||||
|
common = grub-core/gnulib/getopt.c;
|
||||||
|
common = grub-core/gnulib/progname.c;
|
||||||
|
|
||||||
|
common = util/misc.c;
|
||||||
|
common = grub-core/kern/misc.c;
|
||||||
|
common = grub-core/kern/emu/mm.c;
|
||||||
|
common = grub-core/kern/emu/misc.c;
|
||||||
|
common = grub-core/kern/emu/hostfs.c;
|
||||||
|
common = grub-core/kern/emu/getroot.c;
|
||||||
|
common = grub-core/kern/emu/hostdisk.c;
|
||||||
|
|
||||||
|
common = grub-core/commands/blocklist.c;
|
||||||
|
common = grub-core/commands/extcmd.c;
|
||||||
|
common = grub-core/commands/ls.c;
|
||||||
|
common = grub-core/disk/dmraid_nvidia.c;
|
||||||
|
common = grub-core/disk/host.c;
|
||||||
|
common = grub-core/disk/loopback.c;
|
||||||
|
common = grub-core/disk/lvm.c;
|
||||||
|
common = grub-core/disk/mdraid_linux.c;
|
||||||
|
common = grub-core/disk/raid5_recover.c;
|
||||||
|
common = grub-core/disk/raid6_recover.c;
|
||||||
|
common = grub-core/disk/raid.c;
|
||||||
|
common = grub-core/fs/affs.c;
|
||||||
|
common = grub-core/fs/afs_be.c;
|
||||||
|
common = grub-core/fs/afs.c;
|
||||||
|
common = grub-core/fs/befs_be.c;
|
||||||
|
common = grub-core/fs/befs.c;
|
||||||
|
common = grub-core/fs/cpio.c;
|
||||||
|
common = grub-core/fs/ext2.c;
|
||||||
|
common = grub-core/fs/fat.c;
|
||||||
|
common = grub-core/fs/fshelp.c;
|
||||||
|
common = grub-core/fs/hfs.c;
|
||||||
|
common = grub-core/fs/hfsplus.c;
|
||||||
|
common = grub-core/fs/iso9660.c;
|
||||||
|
common = grub-core/fs/jfs.c;
|
||||||
|
common = grub-core/fs/minix.c;
|
||||||
|
common = grub-core/fs/nilfs2.c;
|
||||||
|
common = grub-core/fs/ntfs.c;
|
||||||
|
common = grub-core/fs/ntfscomp.c;
|
||||||
|
common = grub-core/fs/reiserfs.c;
|
||||||
|
common = grub-core/fs/sfs.c;
|
||||||
|
common = grub-core/fs/tar.c;
|
||||||
|
common = grub-core/fs/udf.c;
|
||||||
|
common = grub-core/fs/ufs2.c;
|
||||||
|
common = grub-core/fs/ufs.c;
|
||||||
|
common = grub-core/fs/xfs.c;
|
||||||
|
common = grub-core/kern/command.c;
|
||||||
|
common = grub-core/kern/device.c;
|
||||||
|
common = grub-core/kern/disk.c;
|
||||||
|
common = grub-core/kern/env.c;
|
||||||
|
common = grub-core/kern/err.c;
|
||||||
|
common = grub-core/kern/file.c;
|
||||||
|
common = grub-core/kern/fs.c;
|
||||||
|
common = grub-core/kern/list.c;
|
||||||
|
common = grub-core/kern/partition.c;
|
||||||
|
common = grub-core/lib/arg.c;
|
||||||
|
common = grub-core/lib/crc.c;
|
||||||
|
common = grub-core/lib/crypto.c;
|
||||||
|
common = grub-core/lib/envblk.c;
|
||||||
|
common = grub-core/lib/hexdump.c;
|
||||||
|
common = grub-core/lib/libgcrypt-grub/cipher/sha512.c;
|
||||||
|
common = grub-core/lib/LzFind.c;
|
||||||
|
common = grub-core/lib/LzmaEnc.c;
|
||||||
|
common = grub-core/lib/pbkdf2.c;
|
||||||
|
common = grub-core/normal/datetime.c;
|
||||||
|
common = grub-core/normal/misc.c;
|
||||||
|
common = grub-core/partmap/acorn.c;
|
||||||
|
common = grub-core/partmap/amiga.c;
|
||||||
|
common = grub-core/partmap/apple.c;
|
||||||
|
common = grub-core/partmap/gpt.c;
|
||||||
|
common = grub-core/partmap/msdos.c;
|
||||||
|
common = grub-core/partmap/sun.c;
|
||||||
|
common = grub-core/script/function.c;
|
||||||
|
common = grub-core/script/lexer.c;
|
||||||
|
common = grub-core/script/main.c;
|
||||||
|
common = grub-core/script/script.c;
|
||||||
|
common = grub-core/script/argv.c;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-bin2h;
|
||||||
|
common = util/bin2h.c;
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
mansection = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-mkimage;
|
||||||
|
mansection = 1;
|
||||||
|
|
||||||
|
common = util/grub-mkimage.c;
|
||||||
|
common = util/resolve.c;
|
||||||
|
extra_dist = util/grub-mkimagexx.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
cppflags = '-DGRUB_PKGLIBROOTDIR=\"$(pkglibrootdir)\"';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-mkrelpath;
|
||||||
|
mansection = 1;
|
||||||
|
|
||||||
|
common = util/grub-mkrelpath.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-script-check;
|
||||||
|
mansection = 1;
|
||||||
|
|
||||||
|
common = util/grub-script-check.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-editenv;
|
||||||
|
mansection = 1;
|
||||||
|
|
||||||
|
common = util/grub-editenv.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-mkpasswd-pbkdf2;
|
||||||
|
mansection = 1;
|
||||||
|
|
||||||
|
common = util/grub-mkpasswd-pbkdf2.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
cflags = '$(CFLAGS_GCRY)';
|
||||||
|
cppflags = '$(CPPFLAGS_GCRY)';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-macho2img;
|
||||||
|
mansection = 1;
|
||||||
|
common = util/grub-macho2img.c;
|
||||||
|
condition = COND_APPLE_CC;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-pe2elf;
|
||||||
|
mansection = 1;
|
||||||
|
common = util/grub-pe2elf.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL)';
|
||||||
|
condition = COND_GRUB_PE2ELF;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-fstest;
|
||||||
|
mansection = 1;
|
||||||
|
common = util/grub-fstest.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
condition = COND_GRUB_FSTEST;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-mkfont;
|
||||||
|
mansection = 1;
|
||||||
|
common = util/grub-mkfont.c;
|
||||||
|
common = grub-core/unidata.c;
|
||||||
|
|
||||||
|
cflags = '$(freetype_cflags)';
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER)';
|
||||||
|
ldflags = '$(freetype_libs)';
|
||||||
|
condition = COND_GRUB_MKFONT;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-mkdevicemap;
|
||||||
|
installdir = sbin;
|
||||||
|
mansection = 8;
|
||||||
|
|
||||||
|
common = util/grub-mkdevicemap.c;
|
||||||
|
common = util/deviceiter.c;
|
||||||
|
nosparc64 = util/devicemap.c;
|
||||||
|
|
||||||
|
sparc64_ieee1275 = util/ieee1275/ofpath.c;
|
||||||
|
sparc64_ieee1275 = util/ieee1275/devicemap.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL)';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-probe;
|
||||||
|
installdir = sbin;
|
||||||
|
mansection = 8;
|
||||||
|
common = util/grub-probe.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL)';
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-setup;
|
||||||
|
installdir = sbin;
|
||||||
|
mansection = 8;
|
||||||
|
i386_pc = util/i386/pc/grub-setup.c;
|
||||||
|
i386_pc = util/raid.c;
|
||||||
|
i386_pc = util/lvm.c;
|
||||||
|
|
||||||
|
sparc64_ieee1275 = util/ieee1275/ofpath.c;
|
||||||
|
sparc64_ieee1275 = util/sparc64/ieee1275/grub-setup.c;
|
||||||
|
sparc64_ieee1275 = util/raid.c;
|
||||||
|
sparc64_ieee1275 = util/lvm.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL)';
|
||||||
|
|
||||||
|
enable = i386_pc;
|
||||||
|
enable = sparc64_ieee1275;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
name = grub-ofpathname;
|
||||||
|
installdir = sbin;
|
||||||
|
ieee1275 = util/ieee1275/grub-ofpathname.c;
|
||||||
|
ieee1275 = util/ieee1275/ofpath.c;
|
||||||
|
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
enable = sparc64_ieee1275;
|
||||||
|
};
|
||||||
|
|
||||||
|
data = {
|
||||||
|
common = util/grub.d/README;
|
||||||
|
installdir = grubconf;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '00_header';
|
||||||
|
common = util/grub.d/00_header.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '10_windows';
|
||||||
|
common = util/grub.d/10_windows.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
condition = COND_HOST_WINDOWS;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '10_hurd';
|
||||||
|
common = util/grub.d/10_hurd.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
condition = COND_HOST_HURD;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '10_kfreebsd';
|
||||||
|
common = util/grub.d/10_kfreebsd.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
condition = COND_HOST_KFREEBSD;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '10_netbsd';
|
||||||
|
common = util/grub.d/10_netbsd.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
condition = COND_HOST_NETBSD;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '10_linux';
|
||||||
|
common = util/grub.d/10_linux.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
condition = COND_HOST_LINUX;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '20_linux_xen';
|
||||||
|
common = util/grub.d/20_linux_xen.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
condition = COND_HOST_LINUX;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '30_os-prober';
|
||||||
|
common = util/grub.d/30_os-prober.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '40_custom';
|
||||||
|
common = util/grub.d/40_custom.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = '41_custom';
|
||||||
|
common = util/grub.d/41_custom.in;
|
||||||
|
installdir = grubconf;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
mansection = 1;
|
||||||
|
name = grub-mkrescue;
|
||||||
|
x86_noieee1275 = util/grub-mkrescue.in;
|
||||||
|
powerpc_ieee1275 = util/powerpc/ieee1275/grub-mkrescue.in;
|
||||||
|
enable = i386_pc;
|
||||||
|
enable = x86_efi;
|
||||||
|
enable = i386_qemu;
|
||||||
|
enable = i386_coreboot;
|
||||||
|
enable = powerpc_ieee1275;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
mansection = 8;
|
||||||
|
installdir = sbin;
|
||||||
|
name = grub-install;
|
||||||
|
|
||||||
|
mips = util/grub-install.in;
|
||||||
|
i386_noefi_noieee1275 = util/grub-install.in;
|
||||||
|
|
||||||
|
x86_efi = util/i386/efi/grub-install.in;
|
||||||
|
i386_ieee1275 = util/ieee1275/grub-install.in;
|
||||||
|
powerpc_ieee1275 = util/ieee1275/grub-install.in;
|
||||||
|
|
||||||
|
enable = x86;
|
||||||
|
enable = mips;
|
||||||
|
enable = powerpc_ieee1275;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = grub-mkconfig;
|
||||||
|
common = util/grub-mkconfig.in;
|
||||||
|
mansection = 8;
|
||||||
|
installdir = sbin;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = grub-set-default;
|
||||||
|
common = util/grub-set-default.in;
|
||||||
|
mansection = 8;
|
||||||
|
installdir = sbin;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = grub-reboot;
|
||||||
|
common = util/grub-reboot.in;
|
||||||
|
mansection = 8;
|
||||||
|
installdir = sbin;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = grub-mkconfig_lib;
|
||||||
|
common = util/grub-mkconfig_lib.in;
|
||||||
|
installdir = noinst;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = update-grub_lib;
|
||||||
|
common = util/update-grub_lib.in;
|
||||||
|
installdir = noinst;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = grub-shell;
|
||||||
|
common = tests/util/grub-shell.in;
|
||||||
|
installdir = noinst;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
name = grub-shell-tester;
|
||||||
|
common = tests/util/grub-shell-tester.in;
|
||||||
|
installdir = noinst;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = example_scripted_test;
|
||||||
|
common = tests/example_scripted_test.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = example_grub_script_test;
|
||||||
|
common = tests/example_grub_script_test.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_echo1;
|
||||||
|
common = tests/grub_script_echo1.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_echo_keywords;
|
||||||
|
common = tests/grub_script_echo_keywords.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_vars1;
|
||||||
|
common = tests/grub_script_vars1.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_for1;
|
||||||
|
common = tests/grub_script_for1.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_while1;
|
||||||
|
common = tests/grub_script_while1.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_if;
|
||||||
|
common = tests/grub_script_if.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_blanklines;
|
||||||
|
common = tests/grub_script_blanklines.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_final_semicolon;
|
||||||
|
common = tests/grub_script_final_semicolon.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_dollar;
|
||||||
|
common = tests/grub_script_dollar.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_comments;
|
||||||
|
common = tests/grub_script_comments.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_functions;
|
||||||
|
common = tests/grub_script_functions.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_break;
|
||||||
|
common = tests/grub_script_break.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_continue;
|
||||||
|
common = tests/grub_script_continue.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = {
|
||||||
|
testcase;
|
||||||
|
name = grub_script_shift;
|
||||||
|
common = tests/grub_script_shift.in;
|
||||||
|
};
|
||||||
|
|
||||||
|
program = {
|
||||||
|
testcase;
|
||||||
|
name = example_unit_test;
|
||||||
|
common = tests/example_unit_test.c;
|
||||||
|
common = tests/lib/unit_test.c;
|
||||||
|
common = grub-core/kern/list.c;
|
||||||
|
common = grub-core/kern/misc.c;
|
||||||
|
common = grub-core/tests/lib/test.c;
|
||||||
|
cflags = -Wno-format;
|
||||||
|
ldadd = libgrub.a;
|
||||||
|
ldflags = '$(LIBDEVMAPPER)';
|
||||||
|
};
|
||||||
+1
-1
@@ -94,7 +94,7 @@ else
|
|||||||
fi
|
fi
|
||||||
grub_cv_prog_objcopy_absolute=yes
|
grub_cv_prog_objcopy_absolute=yes
|
||||||
for link_addr in 0x2000 0x8000 0x7C00; do
|
for link_addr in 0x2000 0x8000 0x7C00; do
|
||||||
if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -nostdlib ${TARGET_IMG_LDFLAGS_AC}$link_addr conftest.o -o conftest.exec]); then :
|
if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -nostdlib ${TARGET_IMG_LDFLAGS_AC} ${TARGET_IMG_BASE_LDOPT},$link_addr conftest.o -o conftest.exec]); then :
|
||||||
else
|
else
|
||||||
AC_MSG_ERROR([${CC-cc} cannot link at address $link_addr])
|
AC_MSG_ERROR([${CC-cc} cannot link at address $link_addr])
|
||||||
fi
|
fi
|
||||||
|
|||||||
+18
-17
@@ -1,25 +1,26 @@
|
|||||||
#! /bin/sh
|
#! /usr/bin/env bash
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
aclocal
|
autogen --version >/dev/null || exit 1
|
||||||
autoconf
|
|
||||||
autoheader
|
|
||||||
|
|
||||||
# FIXME: automake doesn't like that there's no Makefile.am
|
echo "Importing unicode..."
|
||||||
automake -a -c -f || true
|
python util/import_unicode.py unicode/UnicodeData.txt unicode/BidiMirroring.txt unicode/ArabicShaping.txt grub-core/unidata.c
|
||||||
|
|
||||||
|
echo "Importing libgcrypt..."
|
||||||
|
python util/import_gcry.py grub-core/lib/libgcrypt/ grub-core
|
||||||
|
|
||||||
|
echo "Creating Makefile.tpl..."
|
||||||
|
python gentpl.py | sed -e '/^$/{N;/^\n$/D;}' > Makefile.tpl
|
||||||
|
|
||||||
|
echo "Running autogen..."
|
||||||
|
autogen -T Makefile.tpl Makefile.util.def | sed -e '/^$/{N;/^\n$/D;}' > Makefile.util.am
|
||||||
|
autogen -T Makefile.tpl grub-core/Makefile.core.def | sed -e '/^$/{N;/^\n$/D;}' > grub-core/Makefile.core.am
|
||||||
|
autogen -T Makefile.tpl grub-core/Makefile.gcry.def | sed -e '/^$/{N;/^\n$/D;}' > grub-core/Makefile.gcry.am
|
||||||
|
|
||||||
|
echo "Saving timestamps..."
|
||||||
echo timestamp > stamp-h.in
|
echo timestamp > stamp-h.in
|
||||||
|
|
||||||
python util/import_gcry.py lib/libgcrypt/ .
|
echo "Running autoreconf..."
|
||||||
|
autoreconf -vi
|
||||||
python util/import_unicode.py unicode/UnicodeData.txt unicode/BidiMirroring.txt unicode/ArabicShaping.txt unidata.c
|
|
||||||
|
|
||||||
for rmk in conf/*.rmk ${GRUB_CONTRIB}/*/conf/*.rmk; do
|
|
||||||
if test -e $rmk ; then
|
|
||||||
ruby genmk.rb < $rmk > `echo $rmk | sed 's/\.rmk$/.mk/'`
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
sh gendistlist.sh > DISTLIST
|
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
@@ -0,0 +1,144 @@
|
|||||||
|
# -*- makefile -*-
|
||||||
|
|
||||||
|
# Platform specific options
|
||||||
|
if COND_i386_pc
|
||||||
|
CFLAGS_PLATFORM = -mrtd -mregparm=3
|
||||||
|
endif
|
||||||
|
if COND_i386_efi
|
||||||
|
LDFLAGS_PLATFORM = -melf_i386
|
||||||
|
endif
|
||||||
|
if COND_x86_64_efi
|
||||||
|
LDFLAGS_PLATFORM = -melf_x86_64
|
||||||
|
endif
|
||||||
|
if COND_i386_qemu
|
||||||
|
CFLAGS_PLATFORM = -mrtd -mregparm=3
|
||||||
|
endif
|
||||||
|
if COND_i386_coreboot
|
||||||
|
CFLAGS_PLATFORM = -mrtd -mregparm=3
|
||||||
|
endif
|
||||||
|
if COND_i386_ieee1275
|
||||||
|
CFLAGS_PLATFORM = -mrtd -mregparm=3
|
||||||
|
endif
|
||||||
|
if COND_mips_yeeloong
|
||||||
|
CFLAGS_PLATFORM = -march=mips3 -mexplicit-relocs -mflush-func=grub_cpu_flush_cache
|
||||||
|
CPPFLAGS_PLATFORM = -DUSE_ASCII_FAILBACK
|
||||||
|
CCASFLAGS_PLATFORM = -march=mips3
|
||||||
|
endif
|
||||||
|
if COND_sparc64_ieee1275
|
||||||
|
CFLAGS_PLATFORM = -mno-app-regs
|
||||||
|
LDFLAGS_PLATFORM = -melf64_sparc -mno-relax
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Other options
|
||||||
|
|
||||||
|
CPPFLAGS_DEFAULT = -DGRUB_FILE=\"$(subst $(srcdir),,$<)\"
|
||||||
|
CPPFLAGS_DEFAULT += -I$(builddir)
|
||||||
|
CPPFLAGS_DEFAULT += -I$(srcdir)
|
||||||
|
CPPFLAGS_DEFAULT += -I$(top_builddir)
|
||||||
|
CPPFLAGS_DEFAULT += -I$(top_srcdir)
|
||||||
|
CPPFLAGS_DEFAULT += -I$(top_srcdir)/include
|
||||||
|
CPPFLAGS_DEFAULT += -I$(top_builddir)/include
|
||||||
|
CCASFLAGS_DEFAULT = -DASM_FILE=1
|
||||||
|
|
||||||
|
LDADD_KERNEL = -lgcc
|
||||||
|
CFLAGS_KERNEL = $(CFLAGS_CPU) $(CFLAGS_PLATFORM) -ffreestanding
|
||||||
|
LDFLAGS_KERNEL = $(LDFLAGS_CPU) $(LDFLAGS_PLATFORM) -nostdlib -Wl,-N -static-libgcc
|
||||||
|
CPPFLAGS_KERNEL = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM)
|
||||||
|
CCASFLAGS_KERNEL = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM)
|
||||||
|
STRIPFLAGS_KERNEL = -R .rel.dyn -R .reginfo -R .note -R .comment
|
||||||
|
|
||||||
|
CFLAGS_MODULE = $(CFLAGS_CPU) $(CFLAGS_PLATFORM) -ffreestanding
|
||||||
|
LDFLAGS_MODULE = $(LDFLAGS_CPU) $(LDFLAGS_PLATFORM) -nostdlib -Wl,-N,-r,-d
|
||||||
|
CPPFLAGS_MODULE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM)
|
||||||
|
CCASFLAGS_MODULE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM)
|
||||||
|
|
||||||
|
CFLAGS_IMAGE = $(CFLAGS_CPU) $(CFLAGS_PLATFORM) -fno-builtin
|
||||||
|
LDFLAGS_IMAGE = $(LDFLAGS_CPU) $(LDFLAGS_PLATFORM) -nostdlib -Wl,-N,-S
|
||||||
|
CPPFLAGS_IMAGE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM)
|
||||||
|
CCASFLAGS_IMAGE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM)
|
||||||
|
|
||||||
|
CFLAGS_PROGRAM =
|
||||||
|
LDFLAGS_PROGRAM =
|
||||||
|
CPPFLAGS_PROGRAM =
|
||||||
|
CCASFLAGS_PROGRAM =
|
||||||
|
|
||||||
|
CFLAGS_LIBRARY = $(CFLAGS_PROGRAM)
|
||||||
|
CPPFLAGS_LIBRARY = $(CPPFLAGS_PROGRAM)
|
||||||
|
CCASFLAGS_LIBRARY = $(CCASFLAGS_PROGRAM)
|
||||||
|
|
||||||
|
# Other variables
|
||||||
|
|
||||||
|
grubconfdir = $(sysconfdir)/grub.d
|
||||||
|
grubdatadir = $(datadir)/`echo @PACKAGE_TARNAME@ | sed '$(transform)'`
|
||||||
|
platformdir = $(pkglibrootdir)/$(target_cpu)-$(platform)
|
||||||
|
|
||||||
|
CFLAGS_GCRY = -Wno-error -Wno-missing-field-initializers
|
||||||
|
CPPFLAGS_GCRY = -I$(top_srcdir)/grub-core/lib/libgcrypt_wrap
|
||||||
|
|
||||||
|
CFLAGS_GNULIB = -Wno-undef -Wno-sign-compare -Wno-unused -D_GL_UNUSED="__attribute__ ((unused))"
|
||||||
|
CPPFLAGS_GNULIB = -I$(top_srcdir)/grub-core/gnulib
|
||||||
|
|
||||||
|
CFLAGS_POSIX = -fno-builtin
|
||||||
|
CPPFLAGS_POSIX = -I$(top_srcdir)/grub-core/lib/posix_wrap
|
||||||
|
|
||||||
|
CPPFLAGS_EFIEMU = -I$(top_srcdir)/grub-core/efiemu/runtime
|
||||||
|
|
||||||
|
# Define these variables to calm down automake
|
||||||
|
|
||||||
|
FS_FILES =
|
||||||
|
DEF_FILES =
|
||||||
|
UND_FILES =
|
||||||
|
IMG_FILES =
|
||||||
|
MOD_FILES =
|
||||||
|
VIDEO_FILES =
|
||||||
|
MODULE_FILES =
|
||||||
|
HANDLER_FILES =
|
||||||
|
PARTMAP_FILES =
|
||||||
|
COMMAND_FILES =
|
||||||
|
PARTTOOL_FILES =
|
||||||
|
TERMINAL_FILES =
|
||||||
|
KERNEL_HEADER_FILES =
|
||||||
|
|
||||||
|
man_MANS =
|
||||||
|
noinst_DATA =
|
||||||
|
pkglib_DATA =
|
||||||
|
bin_SCRIPTS =
|
||||||
|
sbin_SCRIPTS =
|
||||||
|
bin_PROGRAMS =
|
||||||
|
platform_DATA =
|
||||||
|
sbin_PROGRAMS =
|
||||||
|
check_SCRIPTS =
|
||||||
|
grubconf_DATA =
|
||||||
|
check_PROGRAMS =
|
||||||
|
noinst_SCRIPTS =
|
||||||
|
pkglib_SCRIPTS =
|
||||||
|
noinst_PROGRAMS =
|
||||||
|
grubconf_SCRIPTS =
|
||||||
|
noinst_LIBRARIES =
|
||||||
|
|
||||||
|
TESTS =
|
||||||
|
EXTRA_DIST =
|
||||||
|
CLEANFILES =
|
||||||
|
BUILT_SOURCES =
|
||||||
|
|
||||||
|
# Rules for autogen definition files
|
||||||
|
|
||||||
|
.PRECIOUS: $(top_srcdir)/Makefile.tpl
|
||||||
|
$(top_srcdir)/Makefile.tpl: $(top_srcdir)/gentpl.py
|
||||||
|
python $< | sed -e '/^$$/{N;/^\\n$$/D;}' > $@.new || (rm -f $@.new; exit 1)
|
||||||
|
mv $@.new $@
|
||||||
|
|
||||||
|
.PRECIOUS: $(top_srcdir)/Makefile.util.am
|
||||||
|
$(top_srcdir)/Makefile.util.am: $(top_srcdir)/Makefile.util.def $(top_srcdir)/Makefile.tpl
|
||||||
|
autogen -T $(top_srcdir)/Makefile.tpl $< | sed -e '/^$$/{N;/^\\n$$/D;}' > $@.new || (rm -f $@.new; exit 1)
|
||||||
|
mv $@.new $@
|
||||||
|
|
||||||
|
.PRECIOUS: $(top_srcdir)/grub-core/Makefile.core.am
|
||||||
|
$(top_srcdir)/grub-core/Makefile.core.am: $(top_srcdir)/grub-core/Makefile.core.def $(top_srcdir)/Makefile.tpl
|
||||||
|
autogen -T $(top_srcdir)/Makefile.tpl $< | sed -e '/^$$/{N;/^\\n$$/D;}' > $@.new || (rm -f $@.new; exit 1)
|
||||||
|
mv $@.new $@
|
||||||
|
|
||||||
|
.PRECIOUS: $(top_srcdir)/grub-core/Makefile.gcry.am
|
||||||
|
$(top_srcdir)/grub-core/Makefile.gcry.am: $(top_srcdir)/grub-core/Makefile.gcry.def $(top_srcdir)/Makefile.tpl
|
||||||
|
autogen -T $(top_srcdir)/Makefile.tpl $< | sed -e '/^$$/{N;/^\\n$$/D;}' > $@.new || (rm -f $@.new; exit 1)
|
||||||
|
mv $@.new $@
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
EXTRA_DIST += autogen.sh
|
||||||
|
EXTRA_DIST += geninit.sh
|
||||||
|
|
||||||
|
EXTRA_DIST += gentpl.py
|
||||||
|
EXTRA_DIST += Makefile.tpl
|
||||||
|
EXTRA_DIST += Makefile.util.def
|
||||||
|
|
||||||
|
EXTRA_DIST += docs/man
|
||||||
|
EXTRA_DIST += docs/grub.cfg
|
||||||
|
|
||||||
|
EXTRA_DIST += conf/i386-pc-cygwin-img-ld.sc
|
||||||
|
|
||||||
|
EXTRA_DIST += grub-core/Makefile.core.def
|
||||||
|
EXTRA_DIST += grub-core/Makefile.gcry.def
|
||||||
|
|
||||||
|
EXTRA_DIST += grub-core/genmoddep.awk
|
||||||
|
EXTRA_DIST += grub-core/genmodsrc.sh
|
||||||
|
EXTRA_DIST += grub-core/genfslist.sh
|
||||||
|
EXTRA_DIST += grub-core/gencmdlist.sh
|
||||||
|
EXTRA_DIST += grub-core/gensymlist.sh
|
||||||
|
EXTRA_DIST += grub-core/genemuinit.sh
|
||||||
|
EXTRA_DIST += grub-core/genvideolist.sh
|
||||||
|
EXTRA_DIST += grub-core/genhandlerlist.sh
|
||||||
|
EXTRA_DIST += grub-core/genpartmaplist.sh
|
||||||
|
EXTRA_DIST += grub-core/genterminallist.sh
|
||||||
|
EXTRA_DIST += grub-core/genparttoollist.sh
|
||||||
|
EXTRA_DIST += grub-core/genemuinitheader.sh
|
||||||
|
|
||||||
|
EXTRA_DIST += $(shell find $(top_srcdir)/include -name '*.h')
|
||||||
|
EXTRA_DIST += $(shell find $(top_srcdir)/grub-core/gnulib -name '*.h')
|
||||||
|
EXTRA_DIST += $(shell find $(top_srcdir)/grub-core/efiemu -name '*.h')
|
||||||
|
EXTRA_DIST += $(shell find $(top_srcdir)/grub-core/lib/posix_wrap -name '*.h')
|
||||||
|
EXTRA_DIST += $(shell find $(top_srcdir)/grub-core/lib/libgcrypt_wrap -name '*.h')
|
||||||
@@ -1,152 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
ifeq ($(target_cpu), sparc64)
|
|
||||||
COMMON_CFLAGS += -mno-app-regs
|
|
||||||
COMMON_LDFLAGS += -mno-relax
|
|
||||||
endif
|
|
||||||
|
|
||||||
kernel_img_RELOCATABLE = yes
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
kernel_img_SOURCES = kern/device.c kern/disk.c kern/dl.c kern/env.c \
|
|
||||||
kern/err.c kern/list.c kern/command.c \
|
|
||||||
kern/corecmd.c kern/file.c kern/fs.c kern/main.c kern/misc.c \
|
|
||||||
kern/parser.c kern/partition.c kern/term.c \
|
|
||||||
kern/rescue_reader.c kern/rescue_parser.c \
|
|
||||||
\
|
|
||||||
kern/emu/main.c kern/emu/mm.c kern/emu/misc.c \
|
|
||||||
kern/emu/getroot.c kern/emu/time.c kern/emu/hostdisk.c \
|
|
||||||
kern/emu/hostfs.c kern/emu/console.c \
|
|
||||||
\
|
|
||||||
gnulib/progname.c disk/host.c
|
|
||||||
kernel_img_HEADERS += datetime.h emu/misc.h
|
|
||||||
kernel_img_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -Wno-char-subscripts -Wno-unused -Wno-deprecated-declarations -Wno-undef -I$(srcdir)/gnulib
|
|
||||||
kernel_img_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
TARGET_NO_STRIP = yes
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
pkglib_MODULES += halt.mod
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
ifeq ($(target_cpu), i386)
|
|
||||||
pkglib_MODULES += cpuid.mod
|
|
||||||
cpuid_mod_SOURCES = commands/i386/cpuid.c
|
|
||||||
cpuid_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cpuid_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
grub_emu_LDFLAGS = $(LIBCURSES)
|
|
||||||
ifeq ($(target_cpu), sparc64)
|
|
||||||
grub_emu_LDFLAGS += -m64 -melf64_sparc -mno-relax
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(enable_grub_emu_usb), yes)
|
|
||||||
kernel_img_HEADERS += libusb.h
|
|
||||||
|
|
||||||
pkglib_MODULES += libusb.mod
|
|
||||||
libusb_mod_SOURCES = bus/usb/emu/usb.c
|
|
||||||
libusb_mod_CFLAGS =
|
|
||||||
libusb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usb.mod
|
|
||||||
pkglib_MODULES += usb.mod
|
|
||||||
usb_mod_SOURCES = bus/usb/usb.c
|
|
||||||
usb_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usbtest.mod
|
|
||||||
pkglib_MODULES += usbtest.mod
|
|
||||||
usbtest_mod_SOURCES = commands/usbtest.c
|
|
||||||
usbtest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbtest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usbms.mod
|
|
||||||
pkglib_MODULES += usbms.mod
|
|
||||||
usbms_mod_SOURCES = disk/usbms.c
|
|
||||||
usbms_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbms_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_common.mod
|
|
||||||
usbserial_common_mod_SOURCES = bus/usb/serial/common.c
|
|
||||||
usbserial_common_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_common_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_pl2303.mod
|
|
||||||
usbserial_pl2303_mod_SOURCES = bus/usb/serial/pl2303.c
|
|
||||||
usbserial_pl2303_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_pl2303_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_ftdi.mod
|
|
||||||
usbserial_ftdi_mod_SOURCES = bus/usb/serial/ftdi.c
|
|
||||||
usbserial_ftdi_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_ftdi_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += serial.mod
|
|
||||||
serial_mod_SOURCES = term/serial.c
|
|
||||||
serial_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
grub_emu_LDFLAGS += $(LIBUSB)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(enable_grub_emu_sdl), yes)
|
|
||||||
pkglib_MODULES += sdl.mod
|
|
||||||
sdl_mod_SOURCES = video/emu/sdl.c
|
|
||||||
sdl_mod_CFLAGS =
|
|
||||||
sdl_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
grub_emu_LDFLAGS += $(LIBSDL)
|
|
||||||
kernel_img_HEADERS += sdl.h
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(enable_grub_emu_pci), yes)
|
|
||||||
pkglib_MODULES += pci.mod
|
|
||||||
pci_mod_SOURCES = bus/emu/pci.c commands/lspci.c
|
|
||||||
pci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
grub_emu_LDFLAGS += $(LIBPCIACCESS)
|
|
||||||
kernel_img_HEADERS += libpciaccess.h
|
|
||||||
endif
|
|
||||||
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
|
|
||||||
grub_emu_init.h: genemuinitheader.sh $(pkglib_MODULES)
|
|
||||||
rm -f $@; echo $(pkglib_MODULES) | sh $(srcdir)/genemuinitheader.sh $(NM) > $@
|
|
||||||
DISTCLEANFILES += grub_emu_init.h
|
|
||||||
|
|
||||||
grub_emu_init.c: genemuinit.sh $(pkglib_MODULES) grub_emu_init.h
|
|
||||||
rm -f $@; echo $(pkglib_MODULES) | sh $(srcdir)/genemuinit.sh $(NM) > $@
|
|
||||||
DISTCLEANFILES += grub_emu_init.c
|
|
||||||
|
|
||||||
grub_emu_init.o: grub_emu_init.c grub_emu_init.h
|
|
||||||
rm -f $@; $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -DGRUB_FILE=\"grub_init.c\" -c -o $@ $<
|
|
||||||
CLEANFILES += grub_emu_init.o
|
|
||||||
|
|
||||||
kern_emu_lite.o: kern/emu/lite.c
|
|
||||||
$(TARGET_CC) $(COMMON_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -DGRUB_FILE=\"kern/emu/lite.c\" -c -o $@ $<
|
|
||||||
CLEANFILES += kern_emu_lite.o
|
|
||||||
|
|
||||||
kern_emu_full.o: kern/emu/full.c
|
|
||||||
$(TARGET_CC) $(COMMON_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -DGRUB_FILE=\"kern/emu/full.c\" -c -o $@ $<
|
|
||||||
CLEANFILES += kern_emu_full.o
|
|
||||||
|
|
||||||
kern_emu_cache.o: kern/emu/cache.S
|
|
||||||
$(TARGET_CC) $(COMMON_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(TARGET_ASFLAGS) -DGRUB_FILE=\"kern/emu/cache.S\" -c -o $@ $<
|
|
||||||
CLEANFILES += kern_emu_cache.o
|
|
||||||
|
|
||||||
symlist.o: symlist.c
|
|
||||||
$(TARGET_CC) $(COMMON_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -DGRUB_FILE=\"symlist.c\" -c -o $@ $<
|
|
||||||
CLEANFILES += symlist.o
|
|
||||||
|
|
||||||
CLEANFILES += grub-emu-lite
|
|
||||||
grub-emu-lite: kern_emu_lite.o kern_emu_cache.o symlist.o kernel.img
|
|
||||||
$(CC) -o $@ $^ $(grub_emu_LDFLAGS) $(LDFLAGS)
|
|
||||||
GRUB_EMU_LITE=grub-emu-lite
|
|
||||||
|
|
||||||
CLEANFILES += grub-emu
|
|
||||||
grub-emu: $(PREMODFILES) kern_emu_full.o grub_emu_init.o kernel.img
|
|
||||||
$(CC) -o $@ $^ $(grub_emu_LDFLAGS) $(LDFLAGS)
|
|
||||||
GRUB_EMU=grub-emu
|
|
||||||
-837
@@ -1,837 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
# Used by various components. These rules need to precede them.
|
|
||||||
script/lexer.c_DEPENDENCIES = grub_script.tab.h grub_script.yy.h
|
|
||||||
|
|
||||||
sbin_UTILITIES += grub-mkdevicemap
|
|
||||||
grub_mkdevicemap_SOURCES = gnulib/progname.c util/grub-mkdevicemap.c \
|
|
||||||
util/deviceiter.c \
|
|
||||||
util/misc.c kern/emu/misc.c \
|
|
||||||
kern/env.c kern/err.c kern/list.c kern/misc.c kern/emu/mm.c
|
|
||||||
|
|
||||||
ifeq ($(target_cpu)-$(platform), sparc64-ieee1275)
|
|
||||||
grub_mkdevicemap_SOURCES += util/ieee1275/ofpath.c util/ieee1275/devicemap.c
|
|
||||||
else
|
|
||||||
grub_mkdevicemap_SOURCES += util/devicemap.c
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For grub-mkimage.
|
|
||||||
bin_UTILITIES += grub-mkimage
|
|
||||||
grub_mkimage_SOURCES = gnulib/progname.c util/grub-mkimage.c util/misc.c \
|
|
||||||
util/resolve.c kern/emu/misc.c lib/LzmaEnc.c lib/LzFind.c
|
|
||||||
util/grub-mkimage.c_DEPENDENCIES = Makefile
|
|
||||||
|
|
||||||
# For grub-probe.
|
|
||||||
sbin_UTILITIES += grub-probe
|
|
||||||
util/grub-probe.c_DEPENDENCIES = grub_probe_init.h
|
|
||||||
grub_probe_SOURCES = gnulib/progname.c util/grub-probe.c \
|
|
||||||
kern/emu/hostdisk.c util/misc.c kern/emu/misc.c kern/emu/getroot.c kern/emu/mm.c \
|
|
||||||
kern/device.c kern/disk.c kern/err.c kern/misc.c \
|
|
||||||
kern/partition.c kern/file.c kern/list.c \
|
|
||||||
\
|
|
||||||
fs/affs.c fs/cpio.c fs/fat.c fs/ext2.c fs/hfs.c \
|
|
||||||
fs/hfsplus.c fs/iso9660.c fs/udf.c fs/jfs.c fs/minix.c \
|
|
||||||
fs/nilfs2.c fs/ntfs.c fs/ntfscomp.c fs/reiserfs.c \
|
|
||||||
fs/sfs.c fs/ufs.c fs/ufs2.c fs/xfs.c fs/afs.c \
|
|
||||||
fs/afs_be.c fs/befs.c fs/befs_be.c fs/tar.c \
|
|
||||||
\
|
|
||||||
partmap/msdos.c partmap/bsdlabel.c partmap/apple.c \
|
|
||||||
partmap/sun.c partmap/sunpc.c partmap/gpt.c \
|
|
||||||
kern/fs.c kern/env.c fs/fshelp.c \
|
|
||||||
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
|
|
||||||
disk/mdraid_linux.c disk/lvm.c grub_probe_init.c
|
|
||||||
|
|
||||||
ifeq ($(enable_grub_fstest), yes)
|
|
||||||
bin_UTILITIES += grub-fstest
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For grub-fstest.
|
|
||||||
util/grub-fstest.c_DEPENDENCIES = grub_fstest_init.h
|
|
||||||
grub_fstest_SOURCES = gnulib/progname.c util/grub-fstest.c kern/emu/hostfs.c \
|
|
||||||
util/misc.c kern/emu/misc.c kern/emu/mm.c \
|
|
||||||
kern/file.c kern/device.c kern/disk.c kern/err.c kern/misc.c \
|
|
||||||
disk/host.c disk/loopback.c kern/list.c kern/command.c \
|
|
||||||
lib/arg.c commands/extcmd.c normal/datetime.c normal/misc.c \
|
|
||||||
lib/hexdump.c lib/crc.c commands/blocklist.c commands/ls.c \
|
|
||||||
\
|
|
||||||
fs/affs.c fs/cpio.c fs/fat.c fs/ext2.c fs/hfs.c \
|
|
||||||
fs/hfsplus.c fs/iso9660.c fs/udf.c fs/jfs.c fs/minix.c \
|
|
||||||
fs/nilfs2.c fs/ntfs.c fs/ntfscomp.c fs/reiserfs.c fs/sfs.c \
|
|
||||||
fs/ufs.c fs/ufs2.c fs/xfs.c fs/afs.c fs/afs_be.c fs/befs.c \
|
|
||||||
fs/befs_be.c fs/tar.c \
|
|
||||||
\
|
|
||||||
kern/partition.c partmap/msdos.c partmap/bsdlabel.c \
|
|
||||||
partmap/apple.c partmap/sun.c partmap/sunpc.c partmap/gpt.c \
|
|
||||||
kern/fs.c kern/env.c fs/fshelp.c disk/raid.c \
|
|
||||||
disk/raid5_recover.c disk/raid6_recover.c \
|
|
||||||
disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c \
|
|
||||||
grub_fstest_init.c
|
|
||||||
|
|
||||||
# For grub-mkfont.
|
|
||||||
ifeq ($(enable_grub_mkfont), yes)
|
|
||||||
bin_UTILITIES += grub-mkfont
|
|
||||||
grub_mkfont_SOURCES = gnulib/progname.c util/grub-mkfont.c util/misc.c \
|
|
||||||
unidata.c kern/emu/misc.c
|
|
||||||
grub_mkfont_CFLAGS = $(freetype_cflags)
|
|
||||||
grub_mkfont_LDFLAGS = $(freetype_libs)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For grub-mkrelpath.
|
|
||||||
bin_UTILITIES += grub-mkrelpath
|
|
||||||
grub_mkrelpath_SOURCES = gnulib/progname.c util/grub-mkrelpath.c util/misc.c kern/emu/misc.c
|
|
||||||
|
|
||||||
bin_UTILITIES += grub-bin2h
|
|
||||||
grub_bin2h_SOURCES = gnulib/progname.c util/bin2h.c
|
|
||||||
|
|
||||||
# For the lexer.
|
|
||||||
grub_script.yy.c grub_script.yy.h: script/yylex.l
|
|
||||||
$(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $(srcdir)/script/yylex.l
|
|
||||||
DISTCLEANFILES += grub_script.yy.c grub_script.yy.h
|
|
||||||
|
|
||||||
# For grub-script-check.
|
|
||||||
bin_UTILITIES += grub-script-check
|
|
||||||
grub_script_check_SOURCES = gnulib/progname.c gnulib/getdelim.c gnulib/getline.c \
|
|
||||||
util/grub-script-check.c util/misc.c kern/emu/misc.c kern/emu/mm.c \
|
|
||||||
script/main.c script/script.c script/function.c script/lexer.c \
|
|
||||||
kern/err.c kern/list.c \
|
|
||||||
kern/command.c kern/misc.c kern/env.c grub_script.tab.c \
|
|
||||||
grub_script.yy.c
|
|
||||||
grub_script_check_CFLAGS = $(GNULIB_UTIL_CFLAGS)
|
|
||||||
grub_script_check_DEPENDENCIES = grub_script.tab.h
|
|
||||||
MOSTLYCLEANFILES += symlist.c kernel_syms.lst
|
|
||||||
DEFSYMFILES += kernel_syms.lst
|
|
||||||
|
|
||||||
kernel_img_HEADERS += boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
|
|
||||||
env.h err.h file.h fs.h kernel.h loader.h misc.h mm.h net.h parser.h \
|
|
||||||
partition.h msdos_partition.h reader.h symbol.h term.h time.h types.h \
|
|
||||||
list.h command.h i18n.h env_private.h libgcc.h
|
|
||||||
|
|
||||||
ifneq ($(platform), emu)
|
|
||||||
kernel_img_HEADERS += machine/memory.h machine/loader.h
|
|
||||||
endif
|
|
||||||
|
|
||||||
symlist.c: $(addprefix include/grub/,$(kernel_img_HEADERS)) config.h gensymlist.sh
|
|
||||||
/bin/sh gensymlist.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
kernel_syms.lst: $(addprefix include/grub/,$(kernel_img_HEADERS)) config.h genkernsyms.sh
|
|
||||||
/bin/sh genkernsyms.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
# For the parser.
|
|
||||||
grub_script.tab.c grub_script.tab.h: script/parser.y
|
|
||||||
$(YACC) -d -p grub_script_yy -b grub_script $(srcdir)/script/parser.y
|
|
||||||
DISTCLEANFILES += grub_script.tab.c grub_script.tab.h
|
|
||||||
|
|
||||||
# For grub-probe.
|
|
||||||
grub_probe_init.lst: geninit.sh $(filter-out grub_probe_init.c,$(grub_probe_SOURCES))
|
|
||||||
rm -f $@; grep GRUB_MOD_INIT $(filter %.c,$^) /dev/null > $@
|
|
||||||
DISTCLEANFILES += grub_probe_init.lst
|
|
||||||
|
|
||||||
grub_probe_init.h: grub_probe_init.lst $(filter-out grub_probe_init.c,$(grub_probe_SOURCES)) geninitheader.sh
|
|
||||||
rm -f $@; sh $(srcdir)/geninitheader.sh $< > $@
|
|
||||||
DISTCLEANFILES += grub_probe_init.h
|
|
||||||
|
|
||||||
grub_probe_init.c: grub_probe_init.lst $(filter-out grub_probe_init.c,$(grub_probe_SOURCES)) geninit.sh grub_probe_init.h
|
|
||||||
rm -f $@; sh $(srcdir)/geninit.sh $< $(filter %.c,$^) > $@
|
|
||||||
DISTCLEANFILES += grub_probe_init.c
|
|
||||||
|
|
||||||
# For grub-setup.
|
|
||||||
grub_setup_init.lst: geninit.sh $(filter-out grub_setup_init.c,$(grub_setup_SOURCES))
|
|
||||||
rm -f $@; grep GRUB_MOD_INIT $(filter %.c,$^) /dev/null > $@
|
|
||||||
DISTCLEANFILES += grub_setup_init.lst
|
|
||||||
|
|
||||||
grub_setup_init.h: grub_setup_init.lst $(filter-out grub_setup_init.c,$(grub_setup_SOURCES)) geninitheader.sh
|
|
||||||
rm -f $@; sh $(srcdir)/geninitheader.sh $< > $@
|
|
||||||
DISTCLEANFILES += grub_setup_init.h
|
|
||||||
|
|
||||||
grub_setup_init.c: grub_setup_init.lst $(filter-out grub_setup_init.c,$(grub_setup_SOURCES)) geninit.sh grub_setup_init.h
|
|
||||||
rm -f $@; sh $(srcdir)/geninit.sh $< $(filter %.c,$^) > $@
|
|
||||||
DISTCLEANFILES += grub_setup_init.c
|
|
||||||
|
|
||||||
# For grub-fstest.
|
|
||||||
grub_fstest_init.lst: geninit.sh $(filter-out grub_fstest_init.c,$(grub_fstest_SOURCES))
|
|
||||||
rm -f $@; grep GRUB_MOD_INIT $(filter %.c,$^) /dev/null > $@
|
|
||||||
DISTCLEANFILES += grub_fstest_init.lst
|
|
||||||
|
|
||||||
grub_fstest_init.h: grub_fstest_init.lst $(filter-out grub_fstest_init.c,$(grub_fstest_SOURCES)) geninitheader.sh
|
|
||||||
rm -f $@; sh $(srcdir)/geninitheader.sh $< > $@
|
|
||||||
DISTCLEANFILES += grub_fstest_init.h
|
|
||||||
|
|
||||||
grub_fstest_init.c: grub_fstest_init.lst $(filter-out grub_fstest_init.c,$(grub_fstest_SOURCES)) geninit.sh grub_fstest_init.h
|
|
||||||
rm -f $@; sh $(srcdir)/geninit.sh $< $(filter %.c,$^) > $@
|
|
||||||
DISTCLEANFILES += grub_fstest_init.c
|
|
||||||
|
|
||||||
# for grub-editenv
|
|
||||||
bin_UTILITIES += grub-editenv
|
|
||||||
grub_editenv_SOURCES = gnulib/progname.c util/grub-editenv.c lib/envblk.c util/misc.c kern/emu/misc.c kern/emu/mm.c kern/misc.c kern/err.c
|
|
||||||
CLEANFILES += grub-editenv
|
|
||||||
|
|
||||||
# Needed for genmk.rb to work
|
|
||||||
ifeq (0,1)
|
|
||||||
bin_UTILITIES += grub-macho2img grub-pe2elf
|
|
||||||
endif
|
|
||||||
|
|
||||||
grub_pe2elf_SOURCES = gnulib/progname.c util/grub-pe2elf.c util/misc.c kern/emu/misc.c
|
|
||||||
CLEANFILES += grub-pe2elf
|
|
||||||
|
|
||||||
grub_macho2img_SOURCES = util/grub-macho2img.c
|
|
||||||
CLEANFILES += grub-macho2img
|
|
||||||
|
|
||||||
# For grub-mkconfig
|
|
||||||
grub-mkconfig: util/grub-mkconfig.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
sbin_SCRIPTS += grub-mkconfig
|
|
||||||
CLEANFILES += grub-mkconfig
|
|
||||||
|
|
||||||
grub-mkconfig_lib: util/grub-mkconfig_lib.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
lib_SCRIPTS += grub-mkconfig_lib
|
|
||||||
CLEANFILES += grub-mkconfig_lib
|
|
||||||
|
|
||||||
update-grub_lib: util/update-grub_lib.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
lib_SCRIPTS += update-grub_lib
|
|
||||||
CLEANFILES += update-grub_lib
|
|
||||||
|
|
||||||
grub-gettext_lib: util/grub-gettext_lib.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
lib_DATA += grub-gettext_lib
|
|
||||||
CLEANFILES += grub-gettext_lib
|
|
||||||
|
|
||||||
%: util/grub.d/%.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
grub-mkconfig_SCRIPTS = 00_header 30_os-prober 40_custom 41_custom
|
|
||||||
ifneq (, $(host_kernel))
|
|
||||||
grub-mkconfig_SCRIPTS += 10_$(host_kernel)
|
|
||||||
endif
|
|
||||||
ifeq (linux, $(host_kernel))
|
|
||||||
grub-mkconfig_SCRIPTS += 20_linux_xen
|
|
||||||
endif
|
|
||||||
|
|
||||||
CLEANFILES += $(grub-mkconfig_SCRIPTS)
|
|
||||||
|
|
||||||
grub-mkconfig_DATA += util/grub.d/README
|
|
||||||
|
|
||||||
# For grub-set-default.
|
|
||||||
grub-set-default: util/grub-set-default.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
sbin_SCRIPTS += grub-set-default
|
|
||||||
CLEANFILES += grub-set-default
|
|
||||||
|
|
||||||
# For grub-reboot.
|
|
||||||
grub-reboot: util/grub-reboot.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
sbin_SCRIPTS += grub-reboot
|
|
||||||
CLEANFILES += grub-reboot
|
|
||||||
|
|
||||||
# Filing systems.
|
|
||||||
pkglib_MODULES += fshelp.mod fat.mod ufs1.mod ufs2.mod ext2.mod ntfs.mod \
|
|
||||||
ntfscomp.mod minix.mod hfs.mod jfs.mod iso9660.mod xfs.mod \
|
|
||||||
affs.mod sfs.mod hfsplus.mod reiserfs.mod cpio.mod tar.mod \
|
|
||||||
udf.mod afs.mod afs_be.mod befs.mod befs_be.mod
|
|
||||||
|
|
||||||
# For fshelp.mod.
|
|
||||||
fshelp_mod_SOURCES = fs/fshelp.c
|
|
||||||
fshelp_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
fshelp_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For fat.mod.
|
|
||||||
fat_mod_SOURCES = fs/fat.c
|
|
||||||
fat_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
fat_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ufs1.mod.
|
|
||||||
ufs1_mod_SOURCES = fs/ufs.c
|
|
||||||
ufs1_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ufs1_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ufs2.mod.
|
|
||||||
ufs2_mod_SOURCES = fs/ufs2.c
|
|
||||||
ufs2_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ufs2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ext2.mod.
|
|
||||||
ext2_mod_SOURCES = fs/ext2.c
|
|
||||||
ext2_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ext2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ntfs.mod.
|
|
||||||
ntfs_mod_SOURCES = fs/ntfs.c
|
|
||||||
ntfs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ntfs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ntfscomp.mod.
|
|
||||||
ntfscomp_mod_SOURCES = fs/ntfscomp.c
|
|
||||||
ntfscomp_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ntfscomp_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For minix.mod.
|
|
||||||
minix_mod_SOURCES = fs/minix.c
|
|
||||||
minix_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
minix_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For nilfs2.mod.
|
|
||||||
pkglib_MODULES += nilfs2.mod
|
|
||||||
nilfs2_mod_SOURCES = fs/nilfs2.c
|
|
||||||
nilfs2_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
nilfs2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For hfs.mod.
|
|
||||||
hfs_mod_SOURCES = fs/hfs.c
|
|
||||||
hfs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
hfs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For jfs.mod.
|
|
||||||
jfs_mod_SOURCES = fs/jfs.c
|
|
||||||
jfs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
jfs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For iso9660.mod.
|
|
||||||
iso9660_mod_SOURCES = fs/iso9660.c
|
|
||||||
iso9660_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
iso9660_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For xfs.mod.
|
|
||||||
xfs_mod_SOURCES = fs/xfs.c
|
|
||||||
xfs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
xfs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For affs.mod.
|
|
||||||
affs_mod_SOURCES = fs/affs.c
|
|
||||||
affs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
affs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For sfs.mod.
|
|
||||||
sfs_mod_SOURCES = fs/sfs.c
|
|
||||||
sfs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
sfs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For hfsplus.mod.
|
|
||||||
hfsplus_mod_SOURCES = fs/hfsplus.c
|
|
||||||
hfsplus_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
hfsplus_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For reiserfs.mod.
|
|
||||||
reiserfs_mod_SOURCES = fs/reiserfs.c
|
|
||||||
reiserfs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
reiserfs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For cpio.mod.
|
|
||||||
cpio_mod_SOURCES = fs/cpio.c
|
|
||||||
cpio_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cpio_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For tar.mod.
|
|
||||||
tar_mod_SOURCES = fs/tar.c
|
|
||||||
tar_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
tar_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For udf.mod.
|
|
||||||
udf_mod_SOURCES = fs/udf.c
|
|
||||||
udf_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
udf_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For afs.mod.
|
|
||||||
afs_mod_SOURCES = fs/afs.c
|
|
||||||
afs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
afs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For afs_be.mod.
|
|
||||||
afs_be_mod_SOURCES = fs/afs_be.c
|
|
||||||
afs_be_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
afs_be_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For befs.mod.
|
|
||||||
befs_mod_SOURCES = fs/befs.c
|
|
||||||
befs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
befs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For befs_be.mod.
|
|
||||||
befs_be_mod_SOURCES = fs/befs_be.c
|
|
||||||
befs_be_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
befs_be_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Partition maps.
|
|
||||||
|
|
||||||
pkglib_MODULES += part_amiga.mod
|
|
||||||
part_amiga_mod_SOURCES = partmap/amiga.c
|
|
||||||
part_amiga_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_amiga_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_apple.mod
|
|
||||||
part_apple_mod_SOURCES = partmap/apple.c
|
|
||||||
part_apple_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_apple_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_msdos.mod
|
|
||||||
part_msdos_mod_SOURCES = partmap/msdos.c
|
|
||||||
part_msdos_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_msdos_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_sun.mod
|
|
||||||
part_sun_mod_SOURCES = partmap/sun.c
|
|
||||||
part_sun_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_sun_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_acorn.mod
|
|
||||||
part_acorn_mod_SOURCES = partmap/acorn.c
|
|
||||||
part_acorn_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_acorn_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_gpt.mod
|
|
||||||
part_gpt_mod_SOURCES = partmap/gpt.c
|
|
||||||
part_gpt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_gpt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_bsd.mod
|
|
||||||
part_bsd_mod_SOURCES = partmap/bsdlabel.c
|
|
||||||
part_bsd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += part_sunpc.mod
|
|
||||||
part_sunpc_mod_SOURCES = partmap/sunpc.c
|
|
||||||
part_sunpc_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
part_sunpc_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Special disk structures and generic drivers
|
|
||||||
|
|
||||||
pkglib_MODULES += raid.mod raid5rec.mod raid6rec.mod mdraid.mod dm_nv.mod \
|
|
||||||
lvm.mod scsi.mod
|
|
||||||
|
|
||||||
# For raid.mod
|
|
||||||
raid_mod_SOURCES = disk/raid.c
|
|
||||||
raid_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
raid_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For raid5rec.mod
|
|
||||||
raid5rec_mod_SOURCES = disk/raid5_recover.c
|
|
||||||
raid5rec_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
raid5rec_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For raid6rec.mod
|
|
||||||
raid6rec_mod_SOURCES = disk/raid6_recover.c
|
|
||||||
raid6rec_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
raid6rec_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For mdraid.mod
|
|
||||||
mdraid_mod_SOURCES = disk/mdraid_linux.c
|
|
||||||
mdraid_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mdraid_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For dm_nv.mod
|
|
||||||
dm_nv_mod_SOURCES = disk/dmraid_nvidia.c
|
|
||||||
dm_nv_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
dm_nv_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For lvm.mod
|
|
||||||
lvm_mod_SOURCES = disk/lvm.c
|
|
||||||
lvm_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
lvm_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For scsi.mod
|
|
||||||
scsi_mod_SOURCES = disk/scsi.c
|
|
||||||
scsi_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
scsi_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Commands.
|
|
||||||
pkglib_MODULES += minicmd.mod extcmd.mod hello.mod \
|
|
||||||
ls.mod cmp.mod cat.mod help.mod search.mod loopback.mod \
|
|
||||||
configfile.mod echo.mod \
|
|
||||||
test.mod blocklist.mod hexdump.mod \
|
|
||||||
read.mod sleep.mod loadenv.mod crc.mod parttool.mod \
|
|
||||||
msdospart.mod memrw.mod normal.mod \
|
|
||||||
gptsync.mod true.mod probe.mod password.mod \
|
|
||||||
keystatus.mod
|
|
||||||
|
|
||||||
# For password.mod.
|
|
||||||
password_mod_SOURCES = commands/password.c
|
|
||||||
password_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
password_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For gptsync.mod.
|
|
||||||
gptsync_mod_SOURCES = commands/gptsync.c
|
|
||||||
gptsync_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
gptsync_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For minicmd.mod.
|
|
||||||
minicmd_mod_SOURCES = commands/minicmd.c
|
|
||||||
minicmd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
minicmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For extcmd.mod.
|
|
||||||
extcmd_mod_SOURCES = commands/extcmd.c lib/arg.c
|
|
||||||
extcmd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
extcmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For hello.mod.
|
|
||||||
hello_mod_SOURCES = hello/hello.c
|
|
||||||
hello_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
hello_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For gfxmenu.mod.
|
|
||||||
pkglib_MODULES += gfxmenu.mod
|
|
||||||
gfxmenu_mod_SOURCES = \
|
|
||||||
gfxmenu/gfxmenu.c \
|
|
||||||
gfxmenu/model.c \
|
|
||||||
gfxmenu/view.c \
|
|
||||||
gfxmenu/icon_manager.c \
|
|
||||||
gfxmenu/theme_loader.c \
|
|
||||||
gfxmenu/widget-box.c \
|
|
||||||
gfxmenu/gui_canvas.c \
|
|
||||||
gfxmenu/gui_circular_progress.c \
|
|
||||||
gfxmenu/gui_box.c \
|
|
||||||
gfxmenu/gui_label.c \
|
|
||||||
gfxmenu/gui_list.c \
|
|
||||||
gfxmenu/gui_image.c \
|
|
||||||
gfxmenu/gui_progress_bar.c \
|
|
||||||
gfxmenu/gui_util.c \
|
|
||||||
gfxmenu/gui_string_util.c \
|
|
||||||
gfxmenu/named_colors.c \
|
|
||||||
gfxmenu/font.c
|
|
||||||
gfxmenu_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
gfxmenu_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For parttool.mod.
|
|
||||||
parttool_mod_SOURCES = commands/parttool.c
|
|
||||||
parttool_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
parttool_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For msdospart.mod.
|
|
||||||
msdospart_mod_SOURCES = parttool/msdospart.c
|
|
||||||
msdospart_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
msdospart_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ls.mod.
|
|
||||||
ls_mod_SOURCES = commands/ls.c
|
|
||||||
ls_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ls_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For cmp.mod.
|
|
||||||
cmp_mod_SOURCES = commands/cmp.c
|
|
||||||
cmp_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cmp_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For cat.mod.
|
|
||||||
cat_mod_SOURCES = commands/cat.c
|
|
||||||
cat_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cat_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For echo.mod
|
|
||||||
echo_mod_SOURCES = commands/echo.c
|
|
||||||
echo_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
echo_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For help.mod.
|
|
||||||
help_mod_SOURCES = commands/help.c
|
|
||||||
help_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
help_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For search.mod.
|
|
||||||
search_mod_SOURCES = commands/search_wrap.c
|
|
||||||
search_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
search_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += search_fs_file.mod search_fs_uuid.mod search_label.mod
|
|
||||||
|
|
||||||
# For search.mod.
|
|
||||||
search_fs_file_mod_SOURCES = commands/search_file.c
|
|
||||||
search_fs_file_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
search_fs_file_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For search.mod.
|
|
||||||
search_label_mod_SOURCES = commands/search_label.c
|
|
||||||
search_label_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
search_label_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For search.mod.
|
|
||||||
search_fs_uuid_mod_SOURCES = commands/search_uuid.c
|
|
||||||
search_fs_uuid_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
search_fs_uuid_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For test.mod.
|
|
||||||
test_mod_SOURCES = commands/test.c
|
|
||||||
test_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
test_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For loopback.mod
|
|
||||||
loopback_mod_SOURCES = disk/loopback.c
|
|
||||||
loopback_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
loopback_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For configfile.mod
|
|
||||||
configfile_mod_SOURCES = commands/configfile.c
|
|
||||||
configfile_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
configfile_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
ifneq ($(platform), ieee1275)
|
|
||||||
# For terminfo.mod.
|
|
||||||
pkglib_MODULES += terminfo.mod
|
|
||||||
terminfo_mod_SOURCES = term/terminfo.c term/tparm.c
|
|
||||||
terminfo_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
terminfo_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For blocklist.mod.
|
|
||||||
blocklist_mod_SOURCES = commands/blocklist.c
|
|
||||||
blocklist_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
blocklist_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For hexdump.mod.
|
|
||||||
hexdump_mod_SOURCES = commands/hexdump.c lib/hexdump.c
|
|
||||||
hexdump_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
hexdump_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For read.mod.
|
|
||||||
read_mod_SOURCES = commands/read.c
|
|
||||||
read_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
read_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For sleep.mod.
|
|
||||||
sleep_mod_SOURCES = commands/sleep.c
|
|
||||||
sleep_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
sleep_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For loadenv.mod.
|
|
||||||
loadenv_mod_SOURCES = commands/loadenv.c lib/envblk.c
|
|
||||||
loadenv_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
loadenv_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For crc.mod.
|
|
||||||
crc_mod_SOURCES = commands/crc.c lib/crc.c
|
|
||||||
crc_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
crc_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For memrw.mod.
|
|
||||||
memrw_mod_SOURCES = commands/memrw.c
|
|
||||||
memrw_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
memrw_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For true.mod
|
|
||||||
true_mod_SOURCES = commands/true.c
|
|
||||||
true_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
true_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For probe.mod.
|
|
||||||
probe_mod_SOURCES = commands/probe.c
|
|
||||||
probe_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
probe_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For keystatus.mod.
|
|
||||||
keystatus_mod_SOURCES = commands/keystatus.c
|
|
||||||
keystatus_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
keystatus_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For normal.mod.
|
|
||||||
ifneq (, $(FONT_SOURCE))
|
|
||||||
normal/charset.c_DEPENDENCIES = widthspec.h
|
|
||||||
endif
|
|
||||||
normal_mod_SOURCES = normal/main.c normal/cmdline.c normal/dyncmd.c \
|
|
||||||
normal/auth.c normal/autofs.c \
|
|
||||||
normal/color.c normal/completion.c normal/datetime.c normal/menu.c \
|
|
||||||
normal/menu_entry.c normal/menu_text.c normal/charset.c \
|
|
||||||
normal/misc.c normal/crypto.c normal/term.c normal/context.c \
|
|
||||||
script/main.c script/script.c script/execute.c script/argv.c unidata.c \
|
|
||||||
script/function.c script/lexer.c grub_script.tab.c grub_script.yy.c
|
|
||||||
normal_mod_CFLAGS = $(COMMON_CFLAGS) $(POSIX_CFLAGS) -Wno-error
|
|
||||||
normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
ifneq (, $(FONT_SOURCE))
|
|
||||||
font/font.c_DEPENDENCIES = ascii.h
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Common Video Subsystem specific modules.
|
|
||||||
# On Yeeloong it's part of kernel
|
|
||||||
ifneq ($(platform), yeeloong)
|
|
||||||
|
|
||||||
# For video.mod.
|
|
||||||
pkglib_MODULES += video.mod
|
|
||||||
video_mod_SOURCES = video/video.c
|
|
||||||
video_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
video_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += video_fb.mod
|
|
||||||
video_fb_mod_SOURCES = video/fb/video_fb.c video/fb/fbblit.c \
|
|
||||||
video/fb/fbfill.c video/fb/fbutil.c
|
|
||||||
video_fb_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
video_fb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For bitmap.mod
|
|
||||||
pkglib_MODULES += bitmap.mod
|
|
||||||
bitmap_mod_SOURCES = video/bitmap.c
|
|
||||||
bitmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bitmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For bitmap_scale.mod
|
|
||||||
pkglib_MODULES += bitmap_scale.mod
|
|
||||||
bitmap_scale_mod_SOURCES = video/bitmap_scale.c
|
|
||||||
bitmap_scale_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bitmap_scale_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += font.mod
|
|
||||||
font_mod_SOURCES = font/font_cmd.c font/font.c
|
|
||||||
font_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
font_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For gfxterm.mod.
|
|
||||||
pkglib_MODULES += gfxterm.mod
|
|
||||||
gfxterm_mod_SOURCES = term/gfxterm.c
|
|
||||||
gfxterm_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
gfxterm_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For videotest.mod.
|
|
||||||
pkglib_MODULES += videotest.mod
|
|
||||||
videotest_mod_SOURCES = commands/videotest.c
|
|
||||||
videotest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
videotest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For tga.mod
|
|
||||||
pkglib_MODULES += tga.mod
|
|
||||||
tga_mod_SOURCES = video/readers/tga.c
|
|
||||||
tga_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
tga_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For jpeg.mod.
|
|
||||||
pkglib_MODULES += jpeg.mod
|
|
||||||
jpeg_mod_SOURCES = video/readers/jpeg.c
|
|
||||||
jpeg_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
jpeg_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For png.mod.
|
|
||||||
pkglib_MODULES += png.mod
|
|
||||||
png_mod_SOURCES = video/readers/png.c
|
|
||||||
png_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
png_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Misc.
|
|
||||||
pkglib_MODULES += gzio.mod elf.mod
|
|
||||||
|
|
||||||
# For elf.mod.
|
|
||||||
elf_mod_SOURCES = kern/elf.c
|
|
||||||
elf_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
elf_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For gzio.mod.
|
|
||||||
gzio_mod_SOURCES = io/gzio.c
|
|
||||||
gzio_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
gzio_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# On Yeeloong it's part of kernel
|
|
||||||
ifneq ($(platform), yeeloong)
|
|
||||||
# For bufio.mod.
|
|
||||||
pkglib_MODULES += bufio.mod
|
|
||||||
bufio_mod_SOURCES = io/bufio.c
|
|
||||||
bufio_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bufio_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For gettext.mod.
|
|
||||||
pkglib_MODULES += gettext.mod
|
|
||||||
gettext_mod_SOURCES = gettext/gettext.c
|
|
||||||
gettext_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
gettext_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Misc.
|
|
||||||
pkglib_MODULES += xnu_uuid.mod
|
|
||||||
|
|
||||||
# For elf.mod.
|
|
||||||
xnu_uuid_mod_SOURCES = commands/xnu_uuid.c
|
|
||||||
xnu_uuid_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
xnu_uuid_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += trig.mod
|
|
||||||
trig_mod_SOURCES = trigtables.c
|
|
||||||
trig_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
trig_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
trigtables.c: gentrigtables
|
|
||||||
./gentrigtables > $@
|
|
||||||
DISTCLEANFILES += trigtables.c
|
|
||||||
gentrigtables: gentrigtables.c
|
|
||||||
$(CC) -o $@ $^ $(CPPFLAGS) -lm
|
|
||||||
DISTCLEANFILES += gentrigtables
|
|
||||||
|
|
||||||
pkglib_MODULES += setjmp.mod
|
|
||||||
setjmp_mod_SOURCES = lib/$(target_cpu)/setjmp.S
|
|
||||||
setjmp_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
setjmp_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += regexp.mod
|
|
||||||
regexp_mod_SOURCES = gnulib/regex.c commands/regexp.c
|
|
||||||
regexp_mod_CFLAGS = $(COMMON_CFLAGS) $(GNULIB_CFLAGS)
|
|
||||||
regexp_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += terminal.mod
|
|
||||||
terminal_mod_SOURCES = commands/terminal.c
|
|
||||||
terminal_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
terminal_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += crypto.mod
|
|
||||||
crypto_mod_SOURCES = lib/crypto.c
|
|
||||||
crypto_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
crypto_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += hashsum.mod
|
|
||||||
hashsum_mod_SOURCES = commands/hashsum.c
|
|
||||||
hashsum_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
hashsum_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += pbkdf2.mod
|
|
||||||
pbkdf2_mod_SOURCES = lib/pbkdf2.c
|
|
||||||
pbkdf2_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
pbkdf2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For password_pbkdf2.mod.
|
|
||||||
pkglib_MODULES += password_pbkdf2.mod
|
|
||||||
password_pbkdf2_mod_SOURCES = commands/password_pbkdf2.c
|
|
||||||
password_pbkdf2_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
password_pbkdf2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For memdisk.mod.
|
|
||||||
pkglib_MODULES += memdisk.mod
|
|
||||||
memdisk_mod_SOURCES = disk/memdisk.c
|
|
||||||
memdisk_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
memdisk_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For reboot.mod.
|
|
||||||
pkglib_MODULES += reboot.mod
|
|
||||||
reboot_mod_SOURCES = commands/reboot.c
|
|
||||||
reboot_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
reboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For date.mod
|
|
||||||
pkglib_MODULES += date.mod
|
|
||||||
date_mod_SOURCES = commands/date.c
|
|
||||||
date_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
date_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For datehook.mod
|
|
||||||
pkglib_MODULES += datehook.mod
|
|
||||||
datehook_mod_SOURCES = hook/datehook.c
|
|
||||||
datehook_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datehook_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For lsmmap.mod
|
|
||||||
pkglib_MODULES += lsmmap.mod
|
|
||||||
lsmmap_mod_SOURCES = commands/lsmmap.c
|
|
||||||
lsmmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
lsmmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For boot.mod.
|
|
||||||
pkglib_MODULES += boot.mod
|
|
||||||
boot_mod_SOURCES = commands/boot.c lib/i386/pc/biosnum.c
|
|
||||||
boot_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
boot_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
bin_UTILITIES += grub-mkpasswd-pbkdf2
|
|
||||||
grub_mkpasswd_pbkdf2_SOURCES = gnulib/progname.c gnulib/getdelim.c gnulib/getline.c util/grub-mkpasswd-pbkdf2.c lib/crypto.c lib/libgcrypt-grub/cipher/sha512.c lib/pbkdf2.c util/misc.c kern/emu/misc.c kern/emu/mm.c kern/err.c
|
|
||||||
grub_mkpasswd_pbkdf2_CFLAGS += -Wno-missing-field-initializers -Wno-error -I$(srcdir)/lib/libgcrypt_wrap -DGRUB_MKPASSWD=1
|
|
||||||
|
|
||||||
include $(srcdir)/conf/gcry.mk
|
|
||||||
@@ -1,78 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS = -mrtd -mregparm=3
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
|
|
||||||
pkglib_PROGRAMS += kernel.img
|
|
||||||
kernel_img_SOURCES = kern/i386/coreboot/startup.S \
|
|
||||||
kern/i386/misc.S \
|
|
||||||
kern/i386/coreboot/init.c \
|
|
||||||
kern/i386/coreboot/mmap.c \
|
|
||||||
kern/i386/halt.c \
|
|
||||||
kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/time.c kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/$(target_cpu)/dl.c kern/parser.c kern/partition.c \
|
|
||||||
kern/i386/tsc.c kern/i386/pit.c \
|
|
||||||
kern/generic/rtc_get_time_ms.c \
|
|
||||||
kern/generic/millisleep.c \
|
|
||||||
kern/env.c \
|
|
||||||
term/i386/pc/vga_text.c term/i386/vga_common.c \
|
|
||||||
symlist.c
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x8200,-Bstatic
|
|
||||||
|
|
||||||
sbin_SCRIPTS += grub-install
|
|
||||||
grub_install_SOURCES = util/grub-install.in
|
|
||||||
|
|
||||||
bin_SCRIPTS += grub-mkrescue
|
|
||||||
grub_mkrescue_SOURCES = util/grub-mkrescue.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_MODULES = linux.mod aout.mod halt.mod datetime.mod mmap.mod
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/i386/uppermem.c mmap/i386/mmap.c
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
mmap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
linux_mod_SOURCES = loader/i386/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For aout.mod.
|
|
||||||
aout_mod_SOURCES = loader/aout.c
|
|
||||||
aout_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For bsd.mod
|
|
||||||
pkglib_MODULES += bsd.mod
|
|
||||||
bsd_mod_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c loader/i386/bsd_helper.S loader/i386/bsd_trampoline.S
|
|
||||||
bsd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
bsd_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/cmos_datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For cmostest.mod
|
|
||||||
pkglib_MODULES += cmostest.mod
|
|
||||||
cmostest_mod_SOURCES = commands/i386/cmostest.c
|
|
||||||
cmostest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cmostest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/i386.mk
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_LDFLAGS = -melf_i386
|
|
||||||
|
|
||||||
include $(srcdir)/conf/x86-efi.mk
|
|
||||||
@@ -1,82 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS = -mrtd -mregparm=3
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
|
|
||||||
# For kernel.img.
|
|
||||||
kernel_img_SOURCES = kern/i386/ieee1275/startup.S \
|
|
||||||
kern/i386/misc.S \
|
|
||||||
kern/i386/ieee1275/init.c \
|
|
||||||
kern/ieee1275/init.c \
|
|
||||||
kern/ieee1275/mmap.c \
|
|
||||||
kern/ieee1275/cmain.c kern/ieee1275/openfw.c \
|
|
||||||
kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/$(target_cpu)/dl.c kern/parser.c kern/partition.c \
|
|
||||||
kern/env.c \
|
|
||||||
kern/time.c kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/generic/millisleep.c \
|
|
||||||
kern/ieee1275/ieee1275.c \
|
|
||||||
term/ieee1275/ofconsole.c \
|
|
||||||
term/terminfo.c term/tparm.c \
|
|
||||||
disk/ieee1275/ofdisk.c \
|
|
||||||
symlist.c
|
|
||||||
kernel_img_HEADERS += ieee1275/ieee1275.h terminfo.h
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x10000,-Bstatic
|
|
||||||
|
|
||||||
# Scripts.
|
|
||||||
sbin_SCRIPTS = grub-install
|
|
||||||
|
|
||||||
# For grub-install.
|
|
||||||
grub_install_SOURCES = util/ieee1275/grub-install.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_MODULES = halt.mod suspend.mod \
|
|
||||||
aout.mod linux.mod \
|
|
||||||
nand.mod datetime.mod \
|
|
||||||
mmap.mod
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/i386/uppermem.c mmap/i386/mmap.c
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
mmap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For aout.mod.
|
|
||||||
aout_mod_SOURCES = loader/aout.c
|
|
||||||
aout_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For suspend.mod
|
|
||||||
suspend_mod_SOURCES = commands/ieee1275/suspend.c
|
|
||||||
suspend_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
suspend_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
linux_mod_SOURCES = loader/i386/ieee1275/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For nand.mod.
|
|
||||||
nand_mod_SOURCES = disk/ieee1275/nand.c
|
|
||||||
nand_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
nand_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/cmos_datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/i386.mk
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,74 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS = -mrtd -mregparm=3
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
|
|
||||||
GRUB_KERNEL_MACHINE_LINK_ADDR = 0x8200
|
|
||||||
|
|
||||||
pkglib_PROGRAMS += kernel.img
|
|
||||||
kernel_img_SOURCES = kern/i386/coreboot/startup.S \
|
|
||||||
kern/i386/misc.S \
|
|
||||||
kern/i386/coreboot/init.c \
|
|
||||||
kern/i386/multiboot_mmap.c \
|
|
||||||
kern/i386/halt.c \
|
|
||||||
kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/time.c kern/list.c kern/handler.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/$(target_cpu)/dl.c kern/parser.c kern/partition.c \
|
|
||||||
kern/i386/tsc.c kern/i386/pit.c \
|
|
||||||
kern/generic/rtc_get_time_ms.c \
|
|
||||||
kern/generic/millisleep.c \
|
|
||||||
kern/env.c \
|
|
||||||
term/i386/pc/vga_text.c term/i386/vga_common.c \
|
|
||||||
symlist.c
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,$(GRUB_KERNEL_MACHINE_LINK_ADDR),-Bstatic
|
|
||||||
|
|
||||||
sbin_SCRIPTS += grub-install
|
|
||||||
grub_install_SOURCES = util/grub-install.in
|
|
||||||
|
|
||||||
bin_SCRIPTS += grub-mkrescue
|
|
||||||
grub_mkrescue_SOURCES = util/grub-mkrescue.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_MODULES = linux.mod aout.mod halt.mod datetime.mod mmap.mod
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/i386/uppermem.c mmap/i386/mmap.c
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
mmap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
linux_mod_SOURCES = loader/i386/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For aout.mod.
|
|
||||||
aout_mod_SOURCES = loader/aout.c
|
|
||||||
aout_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For bsd.mod
|
|
||||||
pkglib_MODULES += bsd.mod
|
|
||||||
bsd_mod_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c loader/i386/bsd_helper.S loader/i386/bsd_trampoline.S
|
|
||||||
bsd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
bsd_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/cmos_datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/i386.mk
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,325 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS = -mrtd -mregparm=3
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
pkglib_IMAGES = boot.img cdboot.img diskboot.img lnxboot.img pxeboot.img
|
|
||||||
|
|
||||||
# For boot.img.
|
|
||||||
boot_img_SOURCES = boot/i386/pc/boot.S
|
|
||||||
boot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
boot_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)0x7C00
|
|
||||||
boot_img_FORMAT = binary
|
|
||||||
|
|
||||||
# For pxeboot.img
|
|
||||||
pxeboot_img_SOURCES = boot/i386/pc/pxeboot.S
|
|
||||||
pxeboot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
pxeboot_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)0x7C00
|
|
||||||
pxeboot_img_FORMAT = binary
|
|
||||||
|
|
||||||
# For diskboot.img.
|
|
||||||
diskboot_img_SOURCES = boot/i386/pc/diskboot.S
|
|
||||||
diskboot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
diskboot_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)0x8000
|
|
||||||
diskboot_img_FORMAT = binary
|
|
||||||
|
|
||||||
# For lnxboot.img.
|
|
||||||
lnxboot_img_SOURCES = boot/i386/pc/lnxboot.S
|
|
||||||
lnxboot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
lnxboot_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)0x6000
|
|
||||||
lnxboot_img_FORMAT = binary
|
|
||||||
|
|
||||||
# For cdboot.img.
|
|
||||||
cdboot_img_SOURCES = boot/i386/pc/cdboot.S
|
|
||||||
cdboot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
cdboot_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)0x7C00
|
|
||||||
cdboot_img_FORMAT = binary
|
|
||||||
|
|
||||||
# For kernel.img.
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
kernel_img_SOURCES = kern/i386/pc/startup.S \
|
|
||||||
kern/i386/misc.S \
|
|
||||||
kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/time.c kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/$(target_cpu)/dl.c kern/i386/pc/init.c kern/i386/pc/mmap.c \
|
|
||||||
kern/parser.c kern/partition.c \
|
|
||||||
kern/i386/tsc.c kern/i386/pit.c \
|
|
||||||
kern/generic/rtc_get_time_ms.c \
|
|
||||||
kern/generic/millisleep.c \
|
|
||||||
kern/env.c \
|
|
||||||
term/i386/pc/console.c term/i386/vga_common.c \
|
|
||||||
symlist.c
|
|
||||||
kernel_img_HEADERS += machine/biosdisk.h machine/vga.h machine/vbe.h \
|
|
||||||
machine/pxe.h i386/pit.h machine/kernel.h
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS) $(TARGET_IMG_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)0x8200 $(COMMON_CFLAGS)
|
|
||||||
|
|
||||||
# Utilities.
|
|
||||||
sbin_UTILITIES = grub-setup
|
|
||||||
|
|
||||||
# For grub-setup.
|
|
||||||
util/i386/pc/grub-setup.c_DEPENDENCIES = grub_setup_init.h
|
|
||||||
grub_setup_SOURCES = gnulib/progname.c util/i386/pc/grub-setup.c \
|
|
||||||
util/misc.c kern/emu/misc.c kern/emu/getroot.c \
|
|
||||||
kern/emu/hostdisk.c kern/device.c kern/disk.c kern/err.c \
|
|
||||||
kern/misc.c kern/partition.c kern/file.c \
|
|
||||||
kern/emu/mm.c kern/fs.c kern/env.c kern/list.c fs/fshelp.c \
|
|
||||||
\
|
|
||||||
fs/affs.c fs/cpio.c fs/ext2.c fs/fat.c fs/hfs.c \
|
|
||||||
fs/hfsplus.c fs/iso9660.c fs/udf.c fs/jfs.c fs/minix.c \
|
|
||||||
fs/nilfs2.c fs/ntfs.c fs/ntfscomp.c fs/reiserfs.c \
|
|
||||||
fs/sfs.c fs/ufs.c fs/ufs2.c fs/xfs.c fs/afs.c \
|
|
||||||
fs/afs_be.c fs/befs.c fs/befs_be.c fs/tar.c \
|
|
||||||
\
|
|
||||||
partmap/msdos.c partmap/bsdlabel.c partmap/sunpc.c \
|
|
||||||
partmap/gpt.c \
|
|
||||||
\
|
|
||||||
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
|
|
||||||
disk/mdraid_linux.c disk/lvm.c \
|
|
||||||
util/raid.c util/lvm.c \
|
|
||||||
grub_setup_init.c
|
|
||||||
|
|
||||||
sbin_SCRIPTS += grub-install
|
|
||||||
grub_install_SOURCES = util/grub-install.in
|
|
||||||
|
|
||||||
bin_SCRIPTS += grub-mkrescue
|
|
||||||
grub_mkrescue_SOURCES = util/grub-mkrescue.in
|
|
||||||
|
|
||||||
pkglib_MODULES = biosdisk.mod chain.mod \
|
|
||||||
halt.mod \
|
|
||||||
vbe.mod vbetest.mod vbeinfo.mod \
|
|
||||||
vga.mod \
|
|
||||||
aout.mod bsd.mod pxe.mod pxecmd.mod datetime.mod \
|
|
||||||
ata_pthru.mod hdparm.mod \
|
|
||||||
usb.mod uhci.mod ohci.mod usbtest.mod usbms.mod usb_keyboard.mod \
|
|
||||||
efiemu.mod mmap.mod acpi.mod drivemap.mod
|
|
||||||
|
|
||||||
# For drivemap.mod.
|
|
||||||
drivemap_mod_SOURCES = commands/i386/pc/drivemap.c \
|
|
||||||
commands/i386/pc/drivemap_int13h.S
|
|
||||||
drivemap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
drivemap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
drivemap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For efiemu.mod.
|
|
||||||
efiemu_mod_SOURCES = efiemu/main.c efiemu/i386/loadcore32.c \
|
|
||||||
efiemu/i386/loadcore64.c efiemu/i386/pc/cfgtables.c \
|
|
||||||
efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c \
|
|
||||||
efiemu/loadcore32.c efiemu/loadcore64.c \
|
|
||||||
efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c \
|
|
||||||
efiemu/i386/coredetect.c
|
|
||||||
efiemu_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
efiemu_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For acpi.mod.
|
|
||||||
acpi_mod_SOURCES = commands/acpi.c commands/i386/pc/acpi.c
|
|
||||||
acpi_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
acpi_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/i386/uppermem.c mmap/i386/mmap.c \
|
|
||||||
mmap/i386/pc/mmap.c mmap/i386/pc/mmap_helper.S
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
mmap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For biosdisk.mod.
|
|
||||||
biosdisk_mod_SOURCES = disk/i386/pc/biosdisk.c
|
|
||||||
biosdisk_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
biosdisk_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For chain.mod.
|
|
||||||
chain_mod_SOURCES = loader/i386/pc/chainloader.c
|
|
||||||
chain_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += linux16.mod
|
|
||||||
linux16_mod_SOURCES = loader/i386/pc/linux.c
|
|
||||||
linux16_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux16_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += linux.mod
|
|
||||||
linux_mod_SOURCES = loader/i386/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += xnu.mod
|
|
||||||
xnu_mod_SOURCES = loader/xnu_resume.c loader/i386/xnu.c \
|
|
||||||
loader/macho32.c loader/macho64.c loader/macho.c loader/xnu.c
|
|
||||||
xnu_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
xnu_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
xnu_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
halt_mod_SOURCES = commands/i386/pc/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For vbe.mod.
|
|
||||||
vbe_mod_SOURCES = video/i386/pc/vbe.c
|
|
||||||
vbe_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
vbe_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For vbeinfo.mod.
|
|
||||||
vbeinfo_mod_SOURCES = commands/i386/pc/vbeinfo.c
|
|
||||||
vbeinfo_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
vbeinfo_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For vbetest.mod.
|
|
||||||
vbetest_mod_SOURCES = commands/i386/pc/vbetest.c
|
|
||||||
vbetest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
vbetest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For vga.mod.
|
|
||||||
vga_mod_SOURCES = video/i386/pc/vga.c
|
|
||||||
vga_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
vga_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For aout.mod
|
|
||||||
aout_mod_SOURCES = loader/aout.c
|
|
||||||
aout_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For bsd.mod
|
|
||||||
bsd_mod_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c loader/i386/bsd_helper.S loader/i386/bsd_trampoline.S
|
|
||||||
bsd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
bsd_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For usb.mod
|
|
||||||
usb_mod_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c
|
|
||||||
usb_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_common.mod
|
|
||||||
usbserial_common_mod_SOURCES = bus/usb/serial/common.c
|
|
||||||
usbserial_common_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_common_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_pl2303.mod
|
|
||||||
usbserial_pl2303_mod_SOURCES = bus/usb/serial/pl2303.c
|
|
||||||
usbserial_pl2303_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_pl2303_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_ftdi.mod
|
|
||||||
usbserial_ftdi_mod_SOURCES = bus/usb/serial/ftdi.c
|
|
||||||
usbserial_ftdi_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_ftdi_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usbtest.mod
|
|
||||||
usbtest_mod_SOURCES = commands/usbtest.c
|
|
||||||
usbtest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbtest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For uhci.mod
|
|
||||||
uhci_mod_SOURCES = bus/usb/uhci.c
|
|
||||||
uhci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
uhci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ohci.mod
|
|
||||||
ohci_mod_SOURCES = bus/usb/ohci.c
|
|
||||||
ohci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ohci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usbms.mod
|
|
||||||
usbms_mod_SOURCES = disk/usbms.c
|
|
||||||
usbms_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbms_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usb_keyboard.mod
|
|
||||||
usb_keyboard_mod_SOURCES = term/usb_keyboard.c
|
|
||||||
usb_keyboard_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usb_keyboard_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For pxe.mod
|
|
||||||
pxe_mod_SOURCES = fs/i386/pc/pxe.c
|
|
||||||
pxe_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
pxe_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For pxecmd.mod
|
|
||||||
pxecmd_mod_SOURCES = commands/i386/pc/pxecmd.c
|
|
||||||
pxecmd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
pxecmd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/cmos_datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For sendkey.mod
|
|
||||||
pkglib_MODULES += sendkey.mod
|
|
||||||
sendkey_mod_SOURCES = commands/i386/pc/sendkey.c
|
|
||||||
sendkey_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
sendkey_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ata_pthru.mod.
|
|
||||||
ata_pthru_mod_SOURCES = disk/ata_pthru.c
|
|
||||||
ata_pthru_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ata_pthru_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For hdparm.mod.
|
|
||||||
hdparm_mod_SOURCES = commands/hdparm.c lib/hexdump.c
|
|
||||||
hdparm_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
hdparm_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For cmostest.mod
|
|
||||||
pkglib_MODULES += cmostest.mod
|
|
||||||
cmostest_mod_SOURCES = commands/i386/cmostest.c
|
|
||||||
cmostest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cmostest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
ifeq ($(enable_efiemu), yes)
|
|
||||||
|
|
||||||
efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF)
|
|
||||||
-rm -f $@
|
|
||||||
ifeq ($(TARGET_APPLE_CC), 1)
|
|
||||||
-rm -f $@.bin
|
|
||||||
$(TARGET_CC) -c -m32 -DELF32 -DAPPLE_CC -o $@.bin -Wall -Werror $< -nostdlib -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
|
|
||||||
$(OBJCONV) -felf32 -nu -nd $@.bin $@
|
|
||||||
-rm -f $@.bin
|
|
||||||
else
|
|
||||||
$(TARGET_CC) -c -m32 -DELF32 -o $@ -Wall -Werror $< -nostdlib -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
|
|
||||||
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f $@; exit 1); fi
|
|
||||||
endif
|
|
||||||
|
|
||||||
efiemu64_c.o: efiemu/runtime/efiemu.c
|
|
||||||
ifeq ($(TARGET_APPLE_CC), 1)
|
|
||||||
$(TARGET_CC) -c -m64 -DAPPLE_CC=1 -DELF64 -o $@ -Wall -Werror $< -nostdlib -mno-red-zone -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
|
|
||||||
else
|
|
||||||
$(TARGET_CC) -c -m64 -DELF64 -o $@ -Wall -Werror $< -nostdlib -mcmodel=large -mno-red-zone -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
|
|
||||||
endif
|
|
||||||
|
|
||||||
efiemu64_s.o: efiemu/runtime/efiemu.S
|
|
||||||
-rm -f $@
|
|
||||||
ifeq ($(TARGET_APPLE_CC), 1)
|
|
||||||
$(TARGET_CC) -c -m64 -DAPPLE_CC=1 -DELF64 -o $@ -Wall -Werror $< -nostdlib -mno-red-zone -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
|
|
||||||
else
|
|
||||||
$(TARGET_CC) -c -m64 -DELF64 -o $@ -Wall -Werror $< -nostdlib -mcmodel=large -mno-red-zone -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
|
|
||||||
endif
|
|
||||||
|
|
||||||
efiemu64.o: efiemu64_c.o efiemu64_s.o $(TARGET_OBJ2ELF)
|
|
||||||
-rm -f $@
|
|
||||||
ifeq ($(TARGET_APPLE_CC), 1)
|
|
||||||
-rm -f $@.bin
|
|
||||||
$(TARGET_CC) -m64 -o $@.bin -Wl,-r $^ -nostdlib
|
|
||||||
$(OBJCONV) -felf64 -nu -nd $@.bin $@
|
|
||||||
-rm -f $@.bin
|
|
||||||
else
|
|
||||||
$(TARGET_CC) -m64 -o $@ -Wl,-r $^ -nostdlib
|
|
||||||
if test ! -z $(TARGET_OBJ2ELF); then ./$(TARGET_OBJ2ELF) $@ || (rm -f $@; exit 1); fi
|
|
||||||
endif
|
|
||||||
|
|
||||||
CLEANFILES += efiemu32.o efiemu64.o efiemu64_c.o efiemu64_s.o
|
|
||||||
pkglib_DATA += efiemu32.o efiemu64.o
|
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
||||||
include $(srcdir)/conf/i386.mk
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,86 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS = -mrtd -mregparm=3
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
|
|
||||||
GRUB_KERNEL_MACHINE_LINK_ADDR = 0x8200
|
|
||||||
GRUB_BOOT_MACHINE_LINK_ADDR = 0xffe00
|
|
||||||
|
|
||||||
pkglib_IMAGES += boot.img
|
|
||||||
boot_img_SOURCES = boot/i386/qemu/boot.S
|
|
||||||
boot_img_ASFLAGS = $(COMMON_ASFLAGS) -DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)
|
|
||||||
boot_img_LDFLAGS = $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)$(GRUB_BOOT_MACHINE_LINK_ADDR)
|
|
||||||
boot_img_FORMAT = binary
|
|
||||||
|
|
||||||
kern/i386/qemu/init.c_DEPENDENCIES = ascii.h
|
|
||||||
|
|
||||||
pkglib_PROGRAMS += kernel.img
|
|
||||||
kernel_img_SOURCES = kern/i386/qemu/startup.S \
|
|
||||||
kern/i386/misc.S \
|
|
||||||
kern/i386/coreboot/init.c \
|
|
||||||
kern/i386/qemu/init.c \
|
|
||||||
kern/i386/qemu/mmap.c \
|
|
||||||
kern/i386/halt.c \
|
|
||||||
kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/time.c kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/$(target_cpu)/dl.c kern/parser.c kern/partition.c \
|
|
||||||
kern/i386/tsc.c kern/i386/pit.c \
|
|
||||||
kern/generic/rtc_get_time_ms.c \
|
|
||||||
kern/generic/millisleep.c \
|
|
||||||
kern/env.c \
|
|
||||||
term/i386/pc/vga_text.c term/i386/vga_common.c bus/pci.c \
|
|
||||||
symlist.c
|
|
||||||
kernel_img_HEADERS += pci.h
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS) -DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS) -DGRUB_KERNEL_MACHINE_LINK_ADDR=$(GRUB_KERNEL_MACHINE_LINK_ADDR)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) $(TARGET_IMG_LDFLAGS)$(GRUB_KERNEL_MACHINE_LINK_ADDR)
|
|
||||||
kernel_img_FORMAT = binary
|
|
||||||
|
|
||||||
sbin_SCRIPTS += grub-install
|
|
||||||
grub_install_SOURCES = util/grub-install.in
|
|
||||||
|
|
||||||
bin_SCRIPTS += grub-mkrescue
|
|
||||||
grub_mkrescue_SOURCES = util/grub-mkrescue.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_MODULES = linux.mod aout.mod halt.mod datetime.mod mmap.mod
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/i386/uppermem.c mmap/i386/mmap.c
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
mmap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
linux_mod_SOURCES = loader/i386/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For aout.mod.
|
|
||||||
aout_mod_SOURCES = loader/aout.c
|
|
||||||
aout_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
aout_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For bsd.mod
|
|
||||||
pkglib_MODULES += bsd.mod
|
|
||||||
bsd_mod_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c loader/i386/bsd_helper.S loader/i386/bsd_trampoline.S
|
|
||||||
bsd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
bsd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
bsd_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/cmos_datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/i386.mk
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,94 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
pkglib_MODULES += cpuid.mod
|
|
||||||
cpuid_mod_SOURCES = commands/i386/cpuid.c
|
|
||||||
cpuid_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cpuid_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += at_keyboard.mod
|
|
||||||
at_keyboard_mod_SOURCES = term/at_keyboard.c
|
|
||||||
at_keyboard_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
at_keyboard_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += vga_text.mod
|
|
||||||
vga_text_mod_SOURCES = term/i386/pc/vga_text.c term/i386/vga_common.c
|
|
||||||
vga_text_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
vga_text_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += video_cirrus.mod
|
|
||||||
video_cirrus_mod_SOURCES = video/cirrus.c
|
|
||||||
video_cirrus_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
video_cirrus_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += video_bochs.mod
|
|
||||||
video_bochs_mod_SOURCES = video/bochs.c
|
|
||||||
video_bochs_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
video_bochs_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += relocator.mod
|
|
||||||
relocator_mod_SOURCES = lib/i386/relocator.c lib/i386/relocator_asm.S lib/i386/relocator_backward.S
|
|
||||||
relocator_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
relocator_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
relocator_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += ata.mod
|
|
||||||
ata_mod_SOURCES = disk/ata.c
|
|
||||||
ata_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ata_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For setpci.mod
|
|
||||||
pkglib_MODULES += setpci.mod
|
|
||||||
setpci_mod_SOURCES = commands/setpci.c
|
|
||||||
setpci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
setpci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += multiboot.mod
|
|
||||||
multiboot_mod_SOURCES = loader/multiboot.c loader/i386/multiboot_mbi.c
|
|
||||||
multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
multiboot_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += multiboot2.mod
|
|
||||||
multiboot2_mod_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c
|
|
||||||
multiboot2_mod_CFLAGS = $(COMMON_CFLAGS) -DGRUB_USE_MULTIBOOT2
|
|
||||||
multiboot2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
multiboot2_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += serial.mod
|
|
||||||
serial_mod_SOURCES = term/serial.c term/ns8250.c
|
|
||||||
serial_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
serial_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# On qemu it's compiled in
|
|
||||||
ifneq ($(platform), qemu)
|
|
||||||
# For pci.mod
|
|
||||||
pkglib_MODULES += pci.mod
|
|
||||||
pci_mod_SOURCES = bus/pci.c
|
|
||||||
pci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
pci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For cs5536.mod
|
|
||||||
pkglib_MODULES += cs5536.mod
|
|
||||||
cs5536_mod_SOURCES = bus/cs5536.c
|
|
||||||
cs5536_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
cs5536_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For lspci.mod
|
|
||||||
pkglib_MODULES += lspci.mod
|
|
||||||
lspci_mod_SOURCES = commands/lspci.c
|
|
||||||
lspci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
lspci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For play.mod.
|
|
||||||
pkglib_MODULES += play.mod
|
|
||||||
play_mod_SOURCES = commands/i386/pc/play.c
|
|
||||||
play_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
play_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For iorw.mod.
|
|
||||||
pkglib_MODULES += iorw.mod
|
|
||||||
iorw_mod_SOURCES = commands/iorw.c
|
|
||||||
iorw_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
iorw_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
@@ -1,143 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
LINK_BASE = 0x80200000
|
|
||||||
target_machine=yeeloong
|
|
||||||
COMMON_CFLAGS += -march=mips3
|
|
||||||
COMMON_ASFLAGS += -march=mips3
|
|
||||||
|
|
||||||
kernel_img_HEADERS += pci.h bitmap.h video.h gfxterm.h font.h \
|
|
||||||
bitmap_scale.h bufio.h cs5536.h machine/pci.h serial.h
|
|
||||||
|
|
||||||
include $(srcdir)/conf/mips.mk
|
|
||||||
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
kernel_img_SOURCES = kern/$(target_cpu)/startup.S \
|
|
||||||
kern/main.c kern/device.c kern/$(target_cpu)/init.c \
|
|
||||||
kern/$(target_cpu)/$(target_machine)/init.c \
|
|
||||||
kern/disk.c kern/dl.c kern/err.c kern/file.c kern/fs.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/parser.c kern/partition.c kern/env.c kern/$(target_cpu)/dl.c \
|
|
||||||
kern/generic/millisleep.c kern/generic/rtc_get_time_ms.c kern/time.c \
|
|
||||||
kern/$(target_cpu)/cache.S \
|
|
||||||
\
|
|
||||||
term/at_keyboard.c \
|
|
||||||
font/font_cmd.c font/font.c io/bufio.c \
|
|
||||||
video/video.c video/fb/video_fb.c video/fb/fbblit.c \
|
|
||||||
video/fb/fbfill.c video/fb/fbutil.c video/bitmap.c \
|
|
||||||
video/bitmap_scale.c video/sm712.c bus/pci.c bus/bonito.c \
|
|
||||||
term/gfxterm.c commands/extcmd.c lib/arg.c \
|
|
||||||
bus/cs5536.c term/serial.c term/ns8250.c term/terminfo.c term/tparm.c \
|
|
||||||
symlist.c
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS) -DUSE_ASCII_FAILBACK
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,$(LINK_BASE),-Bstatic
|
|
||||||
kernel_img_FORMAT = binary
|
|
||||||
|
|
||||||
pkglib_IMAGES += fwstart.img
|
|
||||||
fwstart_img_SOURCES = boot/$(target_cpu)/$(target_machine)/fwstart.S
|
|
||||||
fwstart_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
fwstart_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
fwstart_img_LDFLAGS = $(COMMON_LDFLAGS) -static-libgcc -lgcc \
|
|
||||||
-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic
|
|
||||||
fwstart_img_FORMAT = binary
|
|
||||||
|
|
||||||
# For ata.mod.
|
|
||||||
pkglib_MODULES += ata.mod
|
|
||||||
ata_mod_SOURCES = disk/ata.c
|
|
||||||
ata_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ata_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For lspci.mod
|
|
||||||
pkglib_MODULES += lspci.mod
|
|
||||||
lspci_mod_SOURCES = commands/lspci.c
|
|
||||||
lspci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
lspci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ata_pthru.mod.
|
|
||||||
pkglib_MODULES += ata_pthru.mod
|
|
||||||
ata_pthru_mod_SOURCES = disk/ata_pthru.c
|
|
||||||
ata_pthru_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ata_pthru_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
pkglib_MODULES += mmap.mod
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/mips/yeeloong/uppermem.c
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
mmap_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
pkglib_MODULES += datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/cmos_datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For lsspd.mod
|
|
||||||
pkglib_MODULES += lsspd.mod
|
|
||||||
lsspd_mod_SOURCES = commands/mips/yeeloong/lsspd.c
|
|
||||||
lsspd_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
lsspd_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += linux.mod
|
|
||||||
linux_mod_SOURCES = loader/$(target_cpu)/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
pkglib_MODULES += halt.mod
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usb.mod
|
|
||||||
pkglib_MODULES += usb.mod
|
|
||||||
usb_mod_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c
|
|
||||||
usb_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_common.mod
|
|
||||||
usbserial_common_mod_SOURCES = bus/usb/serial/common.c
|
|
||||||
usbserial_common_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_common_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_pl2303.mod
|
|
||||||
usbserial_pl2303_mod_SOURCES = bus/usb/serial/pl2303.c
|
|
||||||
usbserial_pl2303_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_pl2303_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For serial.mod.
|
|
||||||
pkglib_MODULES += usbserial_ftdi.mod
|
|
||||||
usbserial_ftdi_mod_SOURCES = bus/usb/serial/ftdi.c
|
|
||||||
usbserial_ftdi_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbserial_ftdi_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usbtest.mod
|
|
||||||
pkglib_MODULES += usbtest.mod
|
|
||||||
usbtest_mod_SOURCES = commands/usbtest.c
|
|
||||||
usbtest_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbtest_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For ohci.mod
|
|
||||||
pkglib_MODULES += ohci.mod
|
|
||||||
ohci_mod_SOURCES = bus/usb/ohci.c
|
|
||||||
ohci_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ohci_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usbms.mod
|
|
||||||
pkglib_MODULES += usbms.mod
|
|
||||||
usbms_mod_SOURCES = disk/usbms.c
|
|
||||||
usbms_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usbms_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For usb_keyboard.mod
|
|
||||||
pkglib_MODULES += usb_keyboard.mod
|
|
||||||
usb_keyboard_mod_SOURCES = term/usb_keyboard.c
|
|
||||||
usb_keyboard_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
usb_keyboard_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
sbin_SCRIPTS += grub-install
|
|
||||||
grub_install_SOURCES = util/grub-install.in
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
|
|
||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS += -mexplicit-relocs -mflush-func=grub_cpu_flush_cache
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
kernel_img_HEADERS += cpu/cache.h
|
|
||||||
|
|
||||||
# Scripts.
|
|
||||||
sbin_SCRIPTS =
|
|
||||||
bin_SCRIPTS =
|
|
||||||
|
|
||||||
# For relocator.mod.
|
|
||||||
pkglib_MODULES += relocator.mod
|
|
||||||
relocator_mod_SOURCES = lib/$(target_cpu)/relocator.c lib/$(target_cpu)/relocator_asm.S
|
|
||||||
relocator_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
relocator_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
relocator_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += multiboot2.mod
|
|
||||||
multiboot2_mod_SOURCES = loader/multiboot.c \
|
|
||||||
loader/multiboot_mbi2.c
|
|
||||||
multiboot2_mod_CFLAGS = $(COMMON_CFLAGS) -DGRUB_USE_MULTIBOOT2
|
|
||||||
multiboot2_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
multiboot2_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,68 +0,0 @@
|
|||||||
|
|
||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
|
|
||||||
kernel_img_HEADERS += ieee1275/ieee1275.h
|
|
||||||
|
|
||||||
# Programs
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
|
|
||||||
kernel_img_SOURCES = kern/powerpc/ieee1275/startup.S kern/ieee1275/cmain.c \
|
|
||||||
kern/ieee1275/ieee1275.c kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/err.c kern/file.c kern/fs.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/ieee1275/init.c \
|
|
||||||
kern/ieee1275/mmap.c \
|
|
||||||
term/ieee1275/ofconsole.c term/terminfo.c term/tparm.c \
|
|
||||||
kern/ieee1275/openfw.c disk/ieee1275/ofdisk.c \
|
|
||||||
kern/parser.c kern/partition.c kern/env.c kern/$(target_cpu)/dl.c \
|
|
||||||
kern/generic/millisleep.c kern/time.c \
|
|
||||||
symlist.c kern/$(target_cpu)/cache.S
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS) -Wl,-N,-S,-Ttext,0x200000,-Bstatic
|
|
||||||
|
|
||||||
# Scripts.
|
|
||||||
sbin_SCRIPTS = grub-install
|
|
||||||
bin_SCRIPTS = grub-mkrescue
|
|
||||||
|
|
||||||
# For grub-install.
|
|
||||||
grub_install_SOURCES = util/ieee1275/grub-install.in
|
|
||||||
|
|
||||||
# For grub-mkrescue.
|
|
||||||
grub_mkrescue_SOURCES = util/powerpc/ieee1275/grub-mkrescue.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_MODULES += ieee1275_fb.mod
|
|
||||||
ieee1275_fb_mod_SOURCES = video/ieee1275.c
|
|
||||||
ieee1275_fb_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ieee1275_fb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
pkglib_MODULES += linux.mod
|
|
||||||
linux_mod_SOURCES = loader/powerpc/ieee1275/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For suspend.mod
|
|
||||||
pkglib_MODULES += suspend.mod
|
|
||||||
suspend_mod_SOURCES = commands/ieee1275/suspend.c
|
|
||||||
suspend_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
suspend_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod
|
|
||||||
pkglib_MODULES += halt.mod
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
pkglib_MODULES += datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/ieee1275/datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,104 +0,0 @@
|
|||||||
|
|
||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_CFLAGS = -mno-app-regs
|
|
||||||
COMMON_LDFLAGS = -melf64_sparc -mno-relax
|
|
||||||
|
|
||||||
# Images.
|
|
||||||
pkglib_IMAGES = boot.img diskboot.img
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
|
|
||||||
# For boot.img.
|
|
||||||
boot_img_SOURCES = boot/sparc64/ieee1275/boot.S
|
|
||||||
boot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
boot_img_LDFLAGS = $(COMMON_LDFLAGS) -Wl,-N,-Ttext,0x4000
|
|
||||||
boot_img_FORMAT = a.out-sunos-big
|
|
||||||
|
|
||||||
# For diskboot.img.
|
|
||||||
diskboot_img_SOURCES = boot/sparc64/ieee1275/diskboot.S
|
|
||||||
diskboot_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
diskboot_img_LDFLAGS = $(COMMON_LDFLAGS) -Wl,-N,-Ttext,0x4200
|
|
||||||
diskboot_img_FORMAT = binary
|
|
||||||
|
|
||||||
kernel_img_HEADERS += ieee1275/ieee1275.h cpu/ieee1275/ieee1275.h
|
|
||||||
kernel_img_SOURCES = kern/sparc64/ieee1275/crt0.S kern/ieee1275/cmain.c \
|
|
||||||
kern/ieee1275/ieee1275.c kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/err.c kern/file.c kern/fs.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/sparc64/ieee1275/ieee1275.c \
|
|
||||||
kern/sparc64/ieee1275/init.c \
|
|
||||||
kern/ieee1275/mmap.c \
|
|
||||||
term/ieee1275/ofconsole.c \
|
|
||||||
kern/ieee1275/openfw.c term/terminfo.c term/tparm.c \
|
|
||||||
disk/ieee1275/ofdisk.c \
|
|
||||||
kern/parser.c kern/partition.c kern/env.c kern/$(target_cpu)/dl.c \
|
|
||||||
kern/generic/millisleep.c kern/time.c \
|
|
||||||
symlist.c kern/$(target_cpu)/cache.S
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += -nostdlib -Wl,-N,-Ttext,0x4400,-Bstatic,-melf64_sparc
|
|
||||||
kernel_img_FORMAT = binary
|
|
||||||
|
|
||||||
# Utilities.
|
|
||||||
sbin_UTILITIES = grub-setup grub-ofpathname
|
|
||||||
|
|
||||||
# For grub-setup.
|
|
||||||
util/sparc64/ieee1275/grub-setup.c_DEPENDENCIES = grub_setup_init.h
|
|
||||||
grub_setup_SOURCES = util/sparc64/ieee1275/grub-setup.c \
|
|
||||||
util/ieee1275/ofpath.c util/misc.c kern/emu/hostdisk.c \
|
|
||||||
kern/emu/misc.c kern/emu/getroot.c kern/emu/mm.c kern/device.c \
|
|
||||||
kern/disk.c kern/err.c kern/misc.c \
|
|
||||||
kern/partition.c kern/file.c kern/fs.c kern/env.c kern/list.c \
|
|
||||||
fs/fshelp.c \
|
|
||||||
\
|
|
||||||
fs/affs.c fs/cpio.c fs/ext2.c fs/fat.c fs/hfs.c \
|
|
||||||
fs/hfsplus.c fs/iso9660.c fs/udf.c fs/jfs.c fs/minix.c \
|
|
||||||
fs/nilfs2.c fs/ntfs.c fs/ntfscomp.c fs/reiserfs.c \
|
|
||||||
fs/sfs.c fs/ufs.c fs/ufs2.c fs/xfs.c fs/afs.c \
|
|
||||||
fs/afs_be.c fs/befs.c fs/befs_be.c fs/tar.c \
|
|
||||||
\
|
|
||||||
partmap/amiga.c partmap/apple.c partmap/msdos.c \
|
|
||||||
partmap/bsdlabel.c partmap/sun.c partmap/acorn.c \
|
|
||||||
\
|
|
||||||
disk/raid.c disk/raid5_recover.c disk/raid6_recover.c \
|
|
||||||
disk/mdraid_linux.c disk/lvm.c util/raid.c \
|
|
||||||
util/lvm.c gnulib/progname.c grub_setup_init.c
|
|
||||||
|
|
||||||
# For grub-ofpathname.
|
|
||||||
grub_ofpathname_SOURCES = util/ieee1275/grub-ofpathname.c \
|
|
||||||
util/ieee1275/ofpath.c util/misc.c kern/emu/misc.c \
|
|
||||||
gnulib/progname.c
|
|
||||||
|
|
||||||
# Scripts.
|
|
||||||
sbin_SCRIPTS = grub-install
|
|
||||||
|
|
||||||
# For grub-install.
|
|
||||||
grub_install_SOURCES = util/grub-install.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_MODULES += ieee1275_fb.mod
|
|
||||||
ieee1275_fb_mod_SOURCES = video/ieee1275.c
|
|
||||||
ieee1275_fb_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
ieee1275_fb_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
pkglib_MODULES += linux.mod
|
|
||||||
linux_mod_SOURCES = loader/sparc64/ieee1275/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
pkglib_MODULES += halt.mod
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
pkglib_MODULES += datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/ieee1275/datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
-110
@@ -1,110 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
# For grub-shell
|
|
||||||
grub-shell: tests/util/grub-shell.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
check_SCRIPTS += grub-shell
|
|
||||||
CLEANFILES += grub-shell
|
|
||||||
|
|
||||||
# For grub-shell-tester
|
|
||||||
grub-shell-tester: tests/util/grub-shell-tester.in config.status
|
|
||||||
./config.status --file=$@:$<
|
|
||||||
chmod +x $@
|
|
||||||
check_SCRIPTS += grub-shell-tester
|
|
||||||
CLEANFILES += grub-shell-tester
|
|
||||||
|
|
||||||
pkglib_MODULES += functional_test.mod
|
|
||||||
functional_test_mod_SOURCES = tests/lib/functional_test.c tests/lib/test.c
|
|
||||||
functional_test_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
functional_test_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Rules for unit tests
|
|
||||||
check_UTILITIES += example_unit_test
|
|
||||||
example_unit_test_SOURCES = tests/example_unit_test.c kern/list.c kern/misc.c tests/lib/test.c tests/lib/unit_test.c
|
|
||||||
example_unit_test_CFLAGS = -Wno-format
|
|
||||||
|
|
||||||
# Rules for functional tests
|
|
||||||
pkglib_MODULES += example_functional_test.mod
|
|
||||||
example_functional_test_mod_SOURCES = tests/example_functional_test.c
|
|
||||||
example_functional_test_mod_CFLAGS = -Wno-format $(COMMON_CFLAGS)
|
|
||||||
example_functional_test_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# Rules for scripted tests
|
|
||||||
check_SCRIPTS += example_scripted_test
|
|
||||||
example_scripted_test_SOURCES = tests/example_scripted_test.in
|
|
||||||
|
|
||||||
check_SCRIPTS += example_grub_script_test
|
|
||||||
example_grub_script_test_SOURCES = tests/example_grub_script_test.in
|
|
||||||
|
|
||||||
#
|
|
||||||
# Rules for real tests
|
|
||||||
#
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_echo1
|
|
||||||
grub_script_echo1_SOURCES = tests/grub_script_echo1.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_echo_keywords
|
|
||||||
grub_script_echo_keywords_SOURCES = tests/grub_script_echo_keywords.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_vars1
|
|
||||||
grub_script_vars1_SOURCES = tests/grub_script_vars1.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_for1
|
|
||||||
grub_script_for1_SOURCES = tests/grub_script_for1.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_while1
|
|
||||||
grub_script_while1_SOURCES = tests/grub_script_while1.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_if
|
|
||||||
grub_script_if_SOURCES = tests/grub_script_if.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_blanklines
|
|
||||||
grub_script_blanklines_SOURCES = tests/grub_script_blanklines.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_final_semicolon
|
|
||||||
grub_script_final_semicolon_SOURCES = tests/grub_script_final_semicolon.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_dollar
|
|
||||||
grub_script_dollar_SOURCES = tests/grub_script_dollar.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_comments
|
|
||||||
grub_script_comments_SOURCES = tests/grub_script_comments.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_functions
|
|
||||||
grub_script_functions_SOURCES = tests/grub_script_functions.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_break
|
|
||||||
grub_script_break_SOURCES = tests/grub_script_break.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_continue
|
|
||||||
grub_script_continue_SOURCES = tests/grub_script_continue.in
|
|
||||||
|
|
||||||
check_SCRIPTS += grub_script_shift
|
|
||||||
grub_script_shift_SOURCES = tests/grub_script_shift.in
|
|
||||||
|
|
||||||
# List of tests to execute on "make check"
|
|
||||||
# SCRIPTED_TESTS = example_scripted_test
|
|
||||||
# SCRIPTED_TESTS += example_grub_script_test
|
|
||||||
# UNIT_TESTS = example_unit_test
|
|
||||||
# FUNCTIONAL_TESTS = example_functional_test.mod
|
|
||||||
|
|
||||||
SCRIPTED_TESTS = grub_script_echo1
|
|
||||||
SCRIPTED_TESTS += grub_script_echo_keywords
|
|
||||||
SCRIPTED_TESTS += grub_script_vars1
|
|
||||||
SCRIPTED_TESTS += grub_script_for1
|
|
||||||
SCRIPTED_TESTS += grub_script_while1
|
|
||||||
SCRIPTED_TESTS += grub_script_if
|
|
||||||
SCRIPTED_TESTS += grub_script_blanklines
|
|
||||||
SCRIPTED_TESTS += grub_script_final_semicolon
|
|
||||||
SCRIPTED_TESTS += grub_script_dollar
|
|
||||||
SCRIPTED_TESTS += grub_script_comments
|
|
||||||
SCRIPTED_TESTS += grub_script_functions
|
|
||||||
SCRIPTED_TESTS += grub_script_break
|
|
||||||
SCRIPTED_TESTS += grub_script_continue
|
|
||||||
SCRIPTED_TESTS += grub_script_shift
|
|
||||||
|
|
||||||
# dependencies between tests and testing-tools
|
|
||||||
$(SCRIPTED_TESTS): grub-shell grub-shell-tester
|
|
||||||
$(FUNCTIONAL_TESTS): functional_test.mod
|
|
||||||
|
|
||||||
@@ -1,112 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
# Scripts.
|
|
||||||
sbin_SCRIPTS = grub-install
|
|
||||||
|
|
||||||
# For grub-install.
|
|
||||||
grub_install_SOURCES = util/i386/efi/grub-install.in
|
|
||||||
|
|
||||||
bin_SCRIPTS += grub-mkrescue
|
|
||||||
grub_mkrescue_SOURCES = util/grub-mkrescue.in
|
|
||||||
|
|
||||||
# Modules.
|
|
||||||
pkglib_PROGRAMS = kernel.img
|
|
||||||
pkglib_MODULES = chain.mod appleldr.mod \
|
|
||||||
linux.mod halt.mod \
|
|
||||||
datetime.mod loadbios.mod \
|
|
||||||
fixvideo.mod mmap.mod acpi.mod
|
|
||||||
|
|
||||||
# For kernel.img.
|
|
||||||
kernel_img_RELOCATABLE = yes
|
|
||||||
kernel_img_SOURCES = kern/$(target_cpu)/efi/startup.S kern/main.c kern/device.c \
|
|
||||||
kern/disk.c kern/dl.c kern/file.c kern/fs.c kern/err.c \
|
|
||||||
kern/misc.c kern/mm.c kern/term.c \
|
|
||||||
kern/rescue_parser.c kern/rescue_reader.c \
|
|
||||||
kern/$(target_cpu)/dl.c kern/i386/efi/init.c kern/parser.c kern/partition.c \
|
|
||||||
kern/env.c symlist.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c \
|
|
||||||
term/efi/console.c disk/efi/efidisk.c \
|
|
||||||
kern/time.c kern/list.c kern/command.c kern/corecmd.c \
|
|
||||||
kern/i386/tsc.c kern/i386/pit.c \
|
|
||||||
kern/generic/rtc_get_time_ms.c \
|
|
||||||
kern/generic/millisleep.c
|
|
||||||
ifeq ($(target_cpu),x86_64)
|
|
||||||
kernel_img_SOURCES += kern/x86_64/efi/callwrap.S
|
|
||||||
endif
|
|
||||||
kernel_img_HEADERS += efi/efi.h efi/time.h efi/disk.h i386/pit.h
|
|
||||||
kernel_img_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
kernel_img_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
kernel_img_LDFLAGS += $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For acpi.mod.
|
|
||||||
acpi_mod_SOURCES = commands/acpi.c commands/efi/acpi.c
|
|
||||||
acpi_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
acpi_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For mmap.mod.
|
|
||||||
mmap_mod_SOURCES = mmap/mmap.c mmap/i386/uppermem.c mmap/i386/mmap.c \
|
|
||||||
mmap/efi/mmap.c
|
|
||||||
mmap_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
mmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For chain.mod.
|
|
||||||
chain_mod_SOURCES = loader/efi/chainloader.c
|
|
||||||
chain_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
chain_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For appleldr.mod.
|
|
||||||
appleldr_mod_SOURCES = loader/efi/appleloader.c
|
|
||||||
appleldr_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
appleldr_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For linux.mod.
|
|
||||||
ifeq ($(target_cpu), x86_64)
|
|
||||||
linux_mod_SOURCES = loader/i386/efi/linux.c loader/i386/linux_trampoline.S
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
else
|
|
||||||
linux_mod_SOURCES = loader/i386/efi/linux.c
|
|
||||||
linux_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
linux_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# For halt.mod.
|
|
||||||
halt_mod_SOURCES = commands/halt.c
|
|
||||||
halt_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For datetime.mod
|
|
||||||
datetime_mod_SOURCES = lib/efi/datetime.c
|
|
||||||
datetime_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
datetime_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For loadbios.mod
|
|
||||||
loadbios_mod_SOURCES = commands/efi/loadbios.c
|
|
||||||
loadbios_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
loadbios_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
# For fixvideo.mod
|
|
||||||
fixvideo_mod_SOURCES = commands/efi/fixvideo.c
|
|
||||||
fixvideo_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
fixvideo_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += efi_uga.mod
|
|
||||||
efi_uga_mod_SOURCES = video/efi_uga.c
|
|
||||||
efi_uga_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
efi_uga_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += efi_gop.mod
|
|
||||||
efi_gop_mod_SOURCES = video/efi_gop.c
|
|
||||||
efi_gop_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
efi_gop_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
|
|
||||||
pkglib_MODULES += xnu.mod
|
|
||||||
xnu_mod_SOURCES = loader/xnu_resume.c loader/i386/xnu.c \
|
|
||||||
loader/macho32.c loader/macho64.c loader/macho.c loader/xnu.c
|
|
||||||
xnu_mod_CFLAGS = $(COMMON_CFLAGS)
|
|
||||||
xnu_mod_LDFLAGS = $(COMMON_LDFLAGS)
|
|
||||||
xnu_mod_ASFLAGS = $(COMMON_ASFLAGS)
|
|
||||||
|
|
||||||
include $(srcdir)/conf/i386.mk
|
|
||||||
include $(srcdir)/conf/common.mk
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
# -*- makefile -*-
|
|
||||||
|
|
||||||
COMMON_LDFLAGS = -melf_x86_64
|
|
||||||
|
|
||||||
include $(srcdir)/conf/x86-efi.mk
|
|
||||||
+162
-61
@@ -1,3 +1,5 @@
|
|||||||
|
# -*- autoconf -*-
|
||||||
|
|
||||||
# Process this file with autoconf to produce a configure script.
|
# Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
# Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc.
|
# Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc.
|
||||||
@@ -30,17 +32,19 @@ dnl type, so there is no conflict. Variables with the prefix "TARGET_"
|
|||||||
dnl (such as TARGET_CC, TARGET_CFLAGS, etc.) are used for the target
|
dnl (such as TARGET_CC, TARGET_CFLAGS, etc.) are used for the target
|
||||||
dnl type.
|
dnl type.
|
||||||
|
|
||||||
|
|
||||||
AC_INIT([GRUB],[1.98],[bug-grub@gnu.org])
|
AC_INIT([GRUB],[1.98],[bug-grub@gnu.org])
|
||||||
AC_PREREQ(2.60)
|
|
||||||
AC_CONFIG_SRCDIR([include/grub/dl.h])
|
# We don't want -g -O2 by default in CFLAGS
|
||||||
AC_CONFIG_HEADER([config.h])
|
: ${CFLAGS=""}
|
||||||
|
|
||||||
# Checks for host and target systems.
|
# Checks for host and target systems.
|
||||||
AC_CANONICAL_HOST
|
AC_CANONICAL_HOST
|
||||||
AC_CANONICAL_TARGET
|
AC_CANONICAL_TARGET
|
||||||
|
|
||||||
AM_INIT_AUTOMAKE()
|
AM_INIT_AUTOMAKE()
|
||||||
|
AC_PREREQ(2.60)
|
||||||
|
AC_CONFIG_SRCDIR([include/grub/dl.h])
|
||||||
|
AC_CONFIG_HEADER([config.h])
|
||||||
|
|
||||||
# Program name transformations
|
# Program name transformations
|
||||||
AC_ARG_PROGRAM
|
AC_ARG_PROGRAM
|
||||||
@@ -50,19 +54,28 @@ if test "x$TARGET_CFLAGS" = x; then
|
|||||||
TARGET_CFLAGS="$TARGET_CFLAGS -Os"
|
TARGET_CFLAGS="$TARGET_CFLAGS -Os"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Default HOST_CPPFLAGS
|
||||||
|
HOST_CPPFLAGS="$HOST_CPPFLAGS -Wall -W"
|
||||||
|
HOST_CPPFLAGS="$HOST_CPPFLAGS -I\$(top_builddir)/include"
|
||||||
|
HOST_CPPFLAGS="$HOST_CPPFLAGS -DGRUB_UTIL=1"
|
||||||
|
HOST_CPPFLAGS="$HOST_CPPFLAGS -DGRUB_LIBDIR=\\\"\$(pkglibdir)\\\""
|
||||||
|
HOST_CPPFLAGS="$HOST_CPPFLAGS -DLOCALEDIR=\\\"\$(localedir)\\\""
|
||||||
|
|
||||||
|
TARGET_CPPFLAGS="$TARGET_CPPFLAGS -Wall -W"
|
||||||
|
TARGET_CPPFLAGS="$TARGET_CPPFLAGS -I\$(top_srcdir)/include"
|
||||||
|
TARGET_CPPFLAGS="$TARGET_CPPFLAGS -I\$(top_builddir)/include"
|
||||||
|
|
||||||
case "$target_cpu" in
|
case "$target_cpu" in
|
||||||
i[[3456]]86) target_cpu=i386 ;;
|
i[[3456]]86) target_cpu=i386 ;;
|
||||||
amd64) target_cpu=x86_64 ;;
|
amd64) target_cpu=x86_64 ;;
|
||||||
sparc) target_cpu=sparc64 ;;
|
sparc) target_cpu=sparc64 ;;
|
||||||
mipsel|mips64el)
|
mipsel|mips64el)
|
||||||
target_cpu=mips;
|
target_cpu=mips;
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS -DGRUB_CPU_MIPSEL=1";
|
machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_CPU_MIPSEL=1";
|
||||||
CFLAGS="$CFLAGS -DGRUB_CPU_MIPSEL=1";
|
|
||||||
;;
|
;;
|
||||||
mips|mips64)
|
mips|mips64)
|
||||||
target_cpu=mips;
|
target_cpu=mips;
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS -DGRUB_CPU_MIPS=1";
|
machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_CPU_MIPS=1";
|
||||||
CFLAGS="$CFLAGS -DGRUB_CPU_MIPS=1";
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@@ -137,25 +150,24 @@ case "$host_os" in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
case "$platform" in
|
case "$platform" in
|
||||||
coreboot) machine_CFLAGS="-DGRUB_MACHINE_COREBOOT=1" ;;
|
coreboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_COREBOOT=1" ;;
|
||||||
multiboot) machine_CFLAGS="-DGRUB_MACHINE_MULTIBOOT=1" ;;
|
multiboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MULTIBOOT=1" ;;
|
||||||
efi) machine_CFLAGS="-DGRUB_MACHINE_EFI=1" ;;
|
efi) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_EFI=1" ;;
|
||||||
ieee1275) machine_CFLAGS="-DGRUB_MACHINE_IEEE1275=1" ;;
|
ieee1275) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_IEEE1275=1" ;;
|
||||||
qemu) machine_CFLAGS="-DGRUB_MACHINE_QEMU=1" ;;
|
qemu) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_QEMU=1" ;;
|
||||||
pc) machine_CFLAGS="-DGRUB_MACHINE_PCBIOS=1" ;;
|
pc) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_PCBIOS=1" ;;
|
||||||
emu) machine_CFLAGS="-DGRUB_MACHINE_EMU=1" ;;
|
emu) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_EMU=1" ;;
|
||||||
yeeloong) machine_CFLAGS="-DGRUB_MACHINE_MIPS_YEELOONG=1 -DGRUB_MACHINE_MIPS_BONITO=1" ;;
|
yeeloong) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS_YEELOONG=1 -DGRUB_MACHINE_MIPS_BONITO=1" ;;
|
||||||
qemu-mips) machine_CFLAGS="-DGRUB_MACHINE_MIPS_QEMU_MIPS=1 -DGRUB_MACHINE_MIPS_BONITO=1" ;;
|
qemu-mips) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS_QEMU_MIPS=1 -DGRUB_MACHINE_MIPS_BONITO=1" ;;
|
||||||
esac
|
esac
|
||||||
case "$target_cpu" in
|
case "$target_cpu" in
|
||||||
mips) machine_CFLAGS="$machine_CFLAGS -DGRUB_MACHINE_MIPS=1" ;;
|
mips) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS=1" ;;
|
||||||
sparc64) machine_CFLAGS="$machine_CFLAGS -DGRUB_MACHINE_SPARC64=1" ;;
|
sparc64) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_SPARC64=1" ;;
|
||||||
esac
|
esac
|
||||||
machine_CFLAGS="$machine_CFLAGS -DMACHINE=`echo ${target_cpu}_$platform | sed y,abcdefghijklmnopqrstuvwxyz,ABCDEFGHIJKLMNOPQRSTUVWXYZ,`"
|
machine_CPPFLAGS="$machine_CPPFLAGS -DMACHINE=`echo ${target_cpu}_$platform | sed y,abcdefghijklmnopqrstuvwxyz,ABCDEFGHIJKLMNOPQRSTUVWXYZ,`"
|
||||||
|
|
||||||
CFLAGS="$CFLAGS $machine_CFLAGS"
|
HOST_CPPFLAGS="$HOST_CPPFLAGS $machine_CPPFLAGS"
|
||||||
TARGET_ASFLAGS="$TARGET_ASFLAGS $machine_CFLAGS"
|
TARGET_CPPFLAGS="$TARGET_CPPFLAGS $machine_CPPFLAGS"
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS $machine_CFLAGS"
|
|
||||||
|
|
||||||
AC_SUBST(host_cpu)
|
AC_SUBST(host_cpu)
|
||||||
AC_SUBST(host_os)
|
AC_SUBST(host_os)
|
||||||
@@ -195,11 +207,13 @@ if test "x$FONT_SOURCE" = x && ( test "x$platform" = xqemu || test "x$platform"
|
|||||||
AC_MSG_ERROR([qemu and yeeloong ports need unifont])
|
AC_MSG_ERROR([qemu and yeeloong ports need unifont])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AC_SUBST([FONT_SOURCE])
|
AC_SUBST([FONT_SOURCE])
|
||||||
|
|
||||||
|
AC_PROG_RANLIB
|
||||||
AC_PROG_INSTALL
|
AC_PROG_INSTALL
|
||||||
AC_PROG_AWK
|
AC_PROG_AWK
|
||||||
AC_PROG_LEX
|
AC_PROG_LEX
|
||||||
|
AC_PROG_YACC
|
||||||
AC_PROG_MAKE_SET
|
AC_PROG_MAKE_SET
|
||||||
AC_PROG_MKDIR_P
|
AC_PROG_MKDIR_P
|
||||||
|
|
||||||
@@ -215,7 +229,6 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# These are not a "must".
|
# These are not a "must".
|
||||||
AC_PATH_PROG(RUBY, ruby)
|
|
||||||
AC_PATH_PROG(MAKEINFO, makeinfo)
|
AC_PATH_PROG(MAKEINFO, makeinfo)
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -223,6 +236,9 @@ AC_PATH_PROG(MAKEINFO, makeinfo)
|
|||||||
#
|
#
|
||||||
|
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
|
AM_PROG_CC_C_O
|
||||||
|
AM_PROG_AS
|
||||||
|
|
||||||
# Must be GCC.
|
# Must be GCC.
|
||||||
test "x$GCC" = xyes || AC_MSG_ERROR([GCC is required])
|
test "x$GCC" = xyes || AC_MSG_ERROR([GCC is required])
|
||||||
|
|
||||||
@@ -237,8 +253,8 @@ AC_CHECK_SIZEOF(long)
|
|||||||
|
|
||||||
grub_apple_cc
|
grub_apple_cc
|
||||||
if test x$grub_cv_apple_cc = xyes ; then
|
if test x$grub_cv_apple_cc = xyes ; then
|
||||||
CFLAGS="$CFLAGS -DAPPLE_CC=1 -fnested-functions"
|
HOST_CPPFLAGS="$HOST_CPPFLAGS -DAPPLE_CC=1"
|
||||||
ASFLAGS="$ASFLAGS -DAPPLE_CC=1"
|
HOST_CFLAGS="$HOST_CFLAGS -fnested-functions"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "x$cross_compiling" = xyes; then
|
if test "x$cross_compiling" = xyes; then
|
||||||
@@ -265,6 +281,13 @@ AC_CHECK_HEADER([util.h], [
|
|||||||
])
|
])
|
||||||
AC_SUBST([LIBUTIL])
|
AC_SUBST([LIBUTIL])
|
||||||
|
|
||||||
|
#
|
||||||
|
# Check for host and build compilers.
|
||||||
|
#
|
||||||
|
HOST_CC=$CC
|
||||||
|
AC_CHECK_PROGS(BUILD_CC, [gcc egcs cc],
|
||||||
|
[AC_MSG_ERROR([none of gcc, egcs and cc is found. set BUILD_CC manually.])])
|
||||||
|
|
||||||
#
|
#
|
||||||
# Check for target programs.
|
# Check for target programs.
|
||||||
#
|
#
|
||||||
@@ -289,9 +312,10 @@ else
|
|||||||
AC_CHECK_TOOL(STRIP, strip)
|
AC_CHECK_TOOL(STRIP, strip)
|
||||||
AC_CHECK_TOOL(NM, nm)
|
AC_CHECK_TOOL(NM, nm)
|
||||||
fi
|
fi
|
||||||
|
AC_SUBST(HOST_CC)
|
||||||
|
AC_SUBST(BUILD_CC)
|
||||||
AC_SUBST(TARGET_CC)
|
AC_SUBST(TARGET_CC)
|
||||||
|
|
||||||
|
|
||||||
# Test the C compiler for the target environment.
|
# Test the C compiler for the target environment.
|
||||||
tmp_CC="$CC"
|
tmp_CC="$CC"
|
||||||
tmp_CFLAGS="$CFLAGS"
|
tmp_CFLAGS="$CFLAGS"
|
||||||
@@ -305,8 +329,8 @@ LDFLAGS="$TARGET_LDFLAGS"
|
|||||||
LIBS=""
|
LIBS=""
|
||||||
|
|
||||||
# debug flags.
|
# debug flags.
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes \
|
TARGET_CFLAGS="$TARGET_CFLAGS -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g"
|
||||||
-Wundef -Wstrict-prototypes -g"
|
TARGET_CCASFLAGS="$TARGET_CCASFLAGS -g"
|
||||||
|
|
||||||
# Force no alignment to save space on i386.
|
# Force no alignment to save space on i386.
|
||||||
if test "x$target_cpu" = xi386; then
|
if test "x$target_cpu" = xi386; then
|
||||||
@@ -347,9 +371,10 @@ fi
|
|||||||
|
|
||||||
grub_apple_target_cc
|
grub_apple_target_cc
|
||||||
if test x$grub_cv_apple_target_cc = xyes ; then
|
if test x$grub_cv_apple_target_cc = xyes ; then
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS -DAPPLE_CC=1 -fnested-functions"
|
TARGET_CPPFLAGS="$TARGET_CPPFLAGS -DAPPLE_CC=1"
|
||||||
|
TARGET_CFLAGS="$TARGET_CFLAGS -fnested-functions"
|
||||||
|
|
||||||
CFLAGS="$CFLAGS -DAPPLE_CC=1 -fnested-functions"
|
CFLAGS="$CFLAGS -DAPPLE_CC=1 -fnested-functions"
|
||||||
TARGET_ASFLAGS="$TARGET_ASFLAGS -DAPPLE_CC=1"
|
|
||||||
TARGET_APPLE_CC=1
|
TARGET_APPLE_CC=1
|
||||||
AC_CHECK_PROG([OBJCONV], [objconv], [objconv], [])
|
AC_CHECK_PROG([OBJCONV], [objconv], [objconv], [])
|
||||||
if test "x$OBJCONV" = x ; then
|
if test "x$OBJCONV" = x ; then
|
||||||
@@ -360,45 +385,42 @@ if test x$grub_cv_apple_target_cc = xyes ; then
|
|||||||
fi
|
fi
|
||||||
TARGET_IMG_LDSCRIPT=
|
TARGET_IMG_LDSCRIPT=
|
||||||
TARGET_IMG_CFLAGS="-static"
|
TARGET_IMG_CFLAGS="-static"
|
||||||
TARGET_IMG_LDFLAGS='-nostdlib -static -Wl,-preload -Wl,-segalign,20 -Wl,-image_base,'
|
TARGET_IMG_LDFLAGS='-nostdlib -static -Wl,-preload -Wl,-segalign,20'
|
||||||
TARGET_IMG_LDFLAGS_AC='-nostdlib -static -Wl,-preload -Wl,-segalign,20 -Wl,-image_base,'
|
TARGET_IMG_LDFLAGS_AC='-nostdlib -static -Wl,-preload -Wl,-segalign,20'
|
||||||
|
TARGET_IMG_BASE_LDOPT="-Wl,-image_base"
|
||||||
else
|
else
|
||||||
TARGET_APPLE_CC=0
|
TARGET_APPLE_CC=0
|
||||||
# Use linker script if present, otherwise use builtin -N script.
|
# Use linker script if present, otherwise use builtin -N script.
|
||||||
if test -f "${srcdir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc"; then
|
if test -f "${srcdir}/${grub_coredir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc"; then
|
||||||
TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc"
|
TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/${grub_coredir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc"
|
||||||
TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT} -Wl,-Ttext,"
|
TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT}"
|
||||||
TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc -Wl,-Ttext,"
|
TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/${grub_coredir}/conf/${target_cpu}-${platform}-${host_os}-img-ld.sc"
|
||||||
|
TARGET_IMG_BASE_LDOPT="-Wl,-Ttext"
|
||||||
else
|
else
|
||||||
TARGET_IMG_LDSCRIPT=
|
TARGET_IMG_LDSCRIPT=
|
||||||
TARGET_IMG_LDFLAGS='-Wl,-N -Wl,-Ttext,'
|
TARGET_IMG_LDFLAGS='-Wl,-N'
|
||||||
TARGET_IMG_LDFLAGS_AC='-Wl,-N -Wl,-Ttext,'
|
TARGET_IMG_LDFLAGS_AC='-Wl,-N'
|
||||||
|
TARGET_IMG_BASE_LDOPT="-Wl,-Ttext"
|
||||||
fi
|
fi
|
||||||
TARGET_IMG_CFLAGS=
|
TARGET_IMG_CFLAGS=
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AC_SUBST(TARGET_IMG_LDSCRIPT)
|
|
||||||
AC_SUBST(TARGET_IMG_LDFLAGS)
|
|
||||||
AC_SUBST(TARGET_IMG_CFLAGS)
|
|
||||||
|
|
||||||
# For platforms where ELF is not the default link format.
|
# For platforms where ELF is not the default link format.
|
||||||
AC_MSG_CHECKING([for command to convert module to ELF format])
|
AC_MSG_CHECKING([for command to convert module to ELF format])
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
cygwin) TARGET_OBJ2ELF='grub-pe2elf';
|
cygwin) TARGET_OBJ2ELF='$(grub_utildir)/grub-pe2elf';
|
||||||
# FIXME: put proper test here
|
# FIXME: put proper test here
|
||||||
AC_DEFINE([NEED_REGISTER_FRAME_INFO], 1,
|
AC_DEFINE([NEED_REGISTER_FRAME_INFO], 1,
|
||||||
[Define to 1 if GCC generates calls to __register_frame_info()])
|
[Define to 1 if GCC generates calls to __register_frame_info()])
|
||||||
;;
|
;;
|
||||||
*) ;;
|
*) ;;
|
||||||
esac
|
esac
|
||||||
AC_SUBST(TARGET_OBJ2ELF)
|
|
||||||
AC_MSG_RESULT([$TARGET_OBJ2ELF])
|
AC_MSG_RESULT([$TARGET_OBJ2ELF])
|
||||||
|
|
||||||
|
|
||||||
if test "x$target_m32" = x1; then
|
if test "x$target_m32" = x1; then
|
||||||
# Force 32-bit mode.
|
# Force 32-bit mode.
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS -m32"
|
TARGET_CFLAGS="$TARGET_CFLAGS -m32"
|
||||||
TARGET_ASFLAGS="$TARGET_CFLAGS -m32"
|
TARGET_CCASFLAGS="$TARGET_CCASFLAGS -m32"
|
||||||
TARGET_LDFLAGS="$TARGET_LDFLAGS -m32"
|
TARGET_LDFLAGS="$TARGET_LDFLAGS -m32"
|
||||||
TARGET_MODULE_FORMAT="elf32"
|
TARGET_MODULE_FORMAT="elf32"
|
||||||
fi
|
fi
|
||||||
@@ -406,7 +428,7 @@ fi
|
|||||||
if test "x$target_m64" = x1; then
|
if test "x$target_m64" = x1; then
|
||||||
# Force 64-bit mode.
|
# Force 64-bit mode.
|
||||||
TARGET_CFLAGS="$TARGET_CFLAGS -m64"
|
TARGET_CFLAGS="$TARGET_CFLAGS -m64"
|
||||||
TARGET_ASFLAGS="$TARGET_ASFLAGS -m64"
|
TARGET_CCASFLAGS="$TARGET_CCASFLAGS -m64"
|
||||||
TARGET_LDFLAGS="$TARGET_LDFLAGS -m64"
|
TARGET_LDFLAGS="$TARGET_LDFLAGS -m64"
|
||||||
TARGET_MODULE_FORMAT="elf64"
|
TARGET_MODULE_FORMAT="elf64"
|
||||||
fi
|
fi
|
||||||
@@ -476,13 +498,30 @@ if test x"$enable_werror" != xno ; then
|
|||||||
TARGET_CFLAGS="$TARGET_CFLAGS -Werror"
|
TARGET_CFLAGS="$TARGET_CFLAGS -Werror"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AC_SUBST(TARGET_CFLAGS)
|
TARGET_CPP="$TARGET_CC -E"
|
||||||
AC_SUBST(TARGET_MODULE_FORMAT)
|
TARGET_CCAS=$TARGET_CC
|
||||||
|
|
||||||
AC_SUBST(OBJCONV)
|
AC_SUBST(OBJCONV)
|
||||||
|
AC_SUBST(TARGET_CPP)
|
||||||
|
AC_SUBST(TARGET_CCAS)
|
||||||
|
AC_SUBST(TARGET_OBJ2ELF)
|
||||||
AC_SUBST(TARGET_APPLE_CC)
|
AC_SUBST(TARGET_APPLE_CC)
|
||||||
AC_SUBST(TARGET_ASFLAGS)
|
AC_SUBST(TARGET_MODULE_FORMAT)
|
||||||
AC_SUBST(TARGET_CPPFLAGS)
|
|
||||||
|
AC_SUBST(TARGET_CFLAGS)
|
||||||
AC_SUBST(TARGET_LDFLAGS)
|
AC_SUBST(TARGET_LDFLAGS)
|
||||||
|
AC_SUBST(TARGET_CPPFLAGS)
|
||||||
|
AC_SUBST(TARGET_CCASFLAGS)
|
||||||
|
|
||||||
|
AC_SUBST(TARGET_IMG_LDSCRIPT)
|
||||||
|
AC_SUBST(TARGET_IMG_LDFLAGS)
|
||||||
|
AC_SUBST(TARGET_IMG_CFLAGS)
|
||||||
|
AC_SUBST(TARGET_IMG_BASE_LDOPT)
|
||||||
|
|
||||||
|
AC_SUBST(HOST_CFLAGS)
|
||||||
|
AC_SUBST(HOST_LDFLAGS)
|
||||||
|
AC_SUBST(HOST_CPPFLAGS)
|
||||||
|
AC_SUBST(HOST_CCASFLAGS)
|
||||||
|
|
||||||
# Set them to their new values for the tests below.
|
# Set them to their new values for the tests below.
|
||||||
CC="$TARGET_CC"
|
CC="$TARGET_CC"
|
||||||
@@ -522,7 +561,7 @@ if test "x$target_cpu" = xi386; then
|
|||||||
if test "$platform" != emu && test "x$TARGET_APPLE_CC" != x1 ; then
|
if test "$platform" != emu && test "x$TARGET_APPLE_CC" != x1 ; then
|
||||||
if test ! -z "$TARGET_IMG_LDSCRIPT"; then
|
if test ! -z "$TARGET_IMG_LDSCRIPT"; then
|
||||||
# Check symbols provided by linker script.
|
# Check symbols provided by linker script.
|
||||||
CFLAGS="$TARGET_CFLAGS -nostdlib ${TARGET_IMG_LDFLAGS_AC}8000 -Wl,--defsym,___main=0x8100"
|
CFLAGS="$TARGET_CFLAGS -nostdlib ${TARGET_IMG_LDFLAGS_AC} ${TARGET_IMG_BASE_LDOPT},8000 -Wl,--defsym,___main=0x8100"
|
||||||
fi
|
fi
|
||||||
grub_CHECK_BSS_START_SYMBOL
|
grub_CHECK_BSS_START_SYMBOL
|
||||||
grub_CHECK_END_SYMBOL
|
grub_CHECK_END_SYMBOL
|
||||||
@@ -778,22 +817,79 @@ fi
|
|||||||
if test x"$device_mapper_excuse" = x ; then
|
if test x"$device_mapper_excuse" = x ; then
|
||||||
# Check for device-mapper library.
|
# Check for device-mapper library.
|
||||||
AC_CHECK_LIB([devmapper], [dm_task_create],
|
AC_CHECK_LIB([devmapper], [dm_task_create],
|
||||||
[LDFLAGS="$LDFLAGS -ldevmapper"
|
[LIBDEVMAPPER="-ldevmapper"
|
||||||
AC_DEFINE([HAVE_DEVICE_MAPPER], [1],
|
AC_DEFINE([HAVE_DEVICE_MAPPER], [1],
|
||||||
[Define to 1 if you have the devmapper library.])],
|
[Define to 1 if you have the devmapper library.])],
|
||||||
[device_mapper_excuse="need devmapper library"])
|
[device_mapper_excuse="need devmapper library"])
|
||||||
fi
|
fi
|
||||||
|
AC_SUBST([LIBDEVMAPPER])
|
||||||
|
|
||||||
AC_CHECK_LIB([zfs], [libzfs_init],
|
AC_CHECK_LIB([zfs], [libzfs_init],
|
||||||
[LDFLAGS="$LDFLAGS -lzfs"
|
[LIBZFS="-lzfs"
|
||||||
AC_DEFINE([HAVE_LIBZFS], [1],
|
AC_DEFINE([HAVE_LIBZFS], [1],
|
||||||
[Define to 1 if you have the ZFS library.])],)
|
[Define to 1 if you have the ZFS library.])],)
|
||||||
|
AC_SUBST([LIBZFS])
|
||||||
|
|
||||||
AC_CHECK_LIB([nvpair], [nvlist_print],
|
AC_CHECK_LIB([nvpair], [nvlist_print],
|
||||||
[LDFLAGS="$LDFLAGS -lnvpair"
|
[LIBNVPAIR="-lnvpair"
|
||||||
AC_DEFINE([HAVE_LIBNVPAIR], [1],
|
AC_DEFINE([HAVE_LIBNVPAIR], [1],
|
||||||
[Define to 1 if you have the NVPAIR library.])],)
|
[Define to 1 if you have the NVPAIR library.])],)
|
||||||
|
AC_SUBST([LIBNVPAIR])
|
||||||
|
|
||||||
AC_SUBST(ASFLAGS)
|
pkglibrootdir='$(libdir)'/`echo $PACKAGE | sed "$program_transform_name"`
|
||||||
|
AC_SUBST(pkglibrootdir)
|
||||||
|
|
||||||
|
AC_SUBST([FONT_SOURCE])
|
||||||
|
AS_IF([test x$target_cpu = xi386 -a x$platform = xpc],
|
||||||
|
[AC_SUBST([GRUB_KERNEL_MACHINE_LINK_ADDR], 0x8200)])
|
||||||
|
AS_IF([test x$target_cpu = xi386 -a x$platform = xcoreboot],
|
||||||
|
[AC_SUBST([GRUB_KERNEL_MACHINE_LINK_ADDR], 0x8200)])
|
||||||
|
AS_IF([test x$target_cpu = xi386 -a x$platform = xmultiboot],
|
||||||
|
[AC_SUBST([GRUB_KERNEL_MACHINE_LINK_ADDR], 0x8200)])
|
||||||
|
AS_IF([test x$target_cpu = xmips -a x$platform = xyeeloong],
|
||||||
|
[AC_SUBST([GRUB_KERNEL_MACHINE_LINK_ADDR], 0x80200000)])
|
||||||
|
AS_IF([test x$target_cpu = xpowerpc -a x$platform = xieee1275],
|
||||||
|
[AC_SUBST([GRUB_KERNEL_MACHINE_LINK_ADDR], 0x200000)])
|
||||||
|
AS_IF([test x$target_cpu = xi386 -a x$platform = xqemu],
|
||||||
|
[AC_SUBST([GRUB_BOOT_MACHINE_LINK_ADDR], 0xffe00)])
|
||||||
|
AS_IF([test x$target_cpu = xi386 -a x$platform = xieee1275],
|
||||||
|
[AC_SUBST([GRUB_KERNEL_MACHINE_LINK_ADDR], 0x10000)])
|
||||||
|
AS_IF([test x$TARGET_APPLE_CC = x1],
|
||||||
|
[AC_SUBST([USE_APPLE_CC_FIXES], yes)])
|
||||||
|
|
||||||
|
#
|
||||||
|
# Automake conditionals
|
||||||
|
#
|
||||||
|
|
||||||
|
AM_CONDITIONAL([COND_emu], [test x$platform = xemu])
|
||||||
|
AM_CONDITIONAL([COND_i386_pc], [test x$target_cpu = xi386 -a x$platform = xpc])
|
||||||
|
AM_CONDITIONAL([COND_i386_efi], [test x$target_cpu = xi386 -a x$platform = xefi])
|
||||||
|
AM_CONDITIONAL([COND_i386_qemu], [test x$target_cpu = xi386 -a x$platform = xqemu])
|
||||||
|
AM_CONDITIONAL([COND_i386_ieee1275], [test x$target_cpu = xi386 -a x$platform = xieee1275])
|
||||||
|
AM_CONDITIONAL([COND_i386_coreboot], [test x$target_cpu = xi386 -a x$platform = xcoreboot])
|
||||||
|
AM_CONDITIONAL([COND_i386_multiboot], [test x$target_cpu = xi386 -a x$platform = xmultiboot])
|
||||||
|
AM_CONDITIONAL([COND_x86_64_efi], [test x$target_cpu = xx86_64 -a x$platform = xefi])
|
||||||
|
AM_CONDITIONAL([COND_mips_yeeloong], [test x$target_cpu = xmips -a x$platform = xyeeloong])
|
||||||
|
AM_CONDITIONAL([COND_mips_qemu_mips], [test x$target_cpu = xmips -a x$platform = xqemu_mips])
|
||||||
|
AM_CONDITIONAL([COND_sparc64_ieee1275], [test x$target_cpu = xsparc64 -a x$platform = xieee1275])
|
||||||
|
AM_CONDITIONAL([COND_powerpc_ieee1275], [test x$target_cpu = xpowerpc -a x$platform = xieee1275])
|
||||||
|
|
||||||
|
AM_CONDITIONAL([COND_HOST_HURD], [test x$host_kernel = xhurd])
|
||||||
|
AM_CONDITIONAL([COND_HOST_LINUX], [test x$host_kernel = xlinux])
|
||||||
|
AM_CONDITIONAL([COND_HOST_NETBSD], [test x$host_kernel = xnetbsd])
|
||||||
|
AM_CONDITIONAL([COND_HOST_WINDOWS], [test x$host_kernel = xwindows])
|
||||||
|
AM_CONDITIONAL([COND_HOST_KFREEBSD], [test x$host_kernel = xkfreebsd])
|
||||||
|
|
||||||
|
AM_CONDITIONAL([COND_MAN_PAGES], [test x$cross_compiling = xno -a x$HELP2MAN != x])
|
||||||
|
AM_CONDITIONAL([COND_GRUB_EMU_USB], [test x$enable_grub_emu_usb = xyes])
|
||||||
|
AM_CONDITIONAL([COND_GRUB_EMU_SDL], [test x$enable_grub_emu_sdl = xyes])
|
||||||
|
AM_CONDITIONAL([COND_GRUB_EMU_PCI], [test x$enable_grub_emu_pci = xyes])
|
||||||
|
AM_CONDITIONAL([COND_GRUB_MKFONT], [test x$enable_grub_mkfont = xyes])
|
||||||
|
AM_CONDITIONAL([COND_HAVE_FONT_SOURCE], [test x$FONT_SOURCE != x])
|
||||||
|
AM_CONDITIONAL([COND_GRUB_FSTEST], [test x$enable_grub_fstest = xyes])
|
||||||
|
AM_CONDITIONAL([COND_GRUB_PE2ELF], [test x$TARGET_OBJ2ELF != x])
|
||||||
|
AM_CONDITIONAL([COND_APPLE_CC], [test x$TARGET_APPLE_CC = x1])
|
||||||
|
AM_CONDITIONAL([COND_ENABLE_EFIEMU], [test x$enable_efiemu = xyes])
|
||||||
|
|
||||||
# Output files.
|
# Output files.
|
||||||
grub_CHECK_LINK_DIR
|
grub_CHECK_LINK_DIR
|
||||||
@@ -811,8 +907,13 @@ else
|
|||||||
cp -rp $srcdir/include/grub/$target_cpu/$platform include/grub/machine 2>/dev/null
|
cp -rp $srcdir/include/grub/$target_cpu/$platform include/grub/machine 2>/dev/null
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
AC_CONFIG_FILES([Makefile gensymlist.sh genkernsyms.sh])
|
|
||||||
|
AC_CONFIG_FILES([Makefile])
|
||||||
|
AC_CONFIG_FILES([grub-core/Makefile])
|
||||||
|
AC_CONFIG_FILES([po/Makefile])
|
||||||
|
AC_CONFIG_FILES([docs/Makefile])
|
||||||
AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h])
|
AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h])
|
||||||
|
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
[
|
[
|
||||||
echo "*******************************************************"
|
echo "*******************************************************"
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
AUTOMAKE_OPTIONS = subdir-objects
|
||||||
|
|
||||||
|
# AM_MAKEINFOFLAGS = --no-split --no-validate
|
||||||
|
info_TEXINFOS = grub.texi
|
||||||
|
grub_TEXINFOS = fdl.texi
|
||||||
|
|
||||||
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
#
|
|
||||||
# Copyright (C) 2005, 2008, 2009 Free Software Foundation, Inc.
|
|
||||||
#
|
|
||||||
# This gendistlist.sh is free software; the author
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
# Generate a list of distributed files.
|
|
||||||
|
|
||||||
EXTRA_DISTFILES="AUTHORS COPYING ChangeLog DISTLIST INSTALL NEWS README \
|
|
||||||
THANKS TODO Makefile.in aclocal.m4 autogen.sh config.guess \
|
|
||||||
config.h.in config.sub configure configure.ac gencmdlist.sh \
|
|
||||||
gendistlist.sh genfslist.sh genhandlerlist.sh geninit.sh \
|
|
||||||
geninitheader.sh genkernsyms.sh.in genmk.rb genmoddep.awk \
|
|
||||||
genmodsrc.sh genpartmaplist.sh genparttoollist.sh \
|
|
||||||
genvideolist.sh \
|
|
||||||
gensymlist.sh.in install-sh mkinstalldirs stamp-h.in"
|
|
||||||
|
|
||||||
DISTDIRS="boot bus commands conf disk docs efiemu font fs hello hook include io \
|
|
||||||
kern lib loader mmap normal partmap parttool script term util video"
|
|
||||||
|
|
||||||
LC_COLLATE=C
|
|
||||||
export LC_COLLATE
|
|
||||||
|
|
||||||
for f in $EXTRA_DISTFILES; do
|
|
||||||
echo $f
|
|
||||||
done
|
|
||||||
|
|
||||||
dir=`dirname $0`
|
|
||||||
cd $dir
|
|
||||||
|
|
||||||
for dir in $DISTDIRS; do
|
|
||||||
for d in `find $dir -type d ! -name .svn ! -name .bzr | sort`; do
|
|
||||||
find $d -maxdepth 1 -name '*.[chSy]' -o -name '*.mk' -o -name '*.rmk' \
|
|
||||||
-o -name '*.rb' -o -name '*.in' -o -name '*.tex' -o -name '*.texi' \
|
|
||||||
-o -name '*.info' -o -name 'grub.cfg' -o -name 'README' \
|
|
||||||
-o -name '*.sc' -o -name 'mdate-sh' -o -name '*.sh' \
|
|
||||||
-o -name 'grub-dumpdevtree' -o -name '*.lua' | sort
|
|
||||||
done
|
|
||||||
done
|
|
||||||
+12
-18
@@ -11,11 +11,6 @@
|
|||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
# PARTICULAR PURPOSE.
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
lst="$1"
|
|
||||||
shift
|
|
||||||
|
|
||||||
header=`echo "${lst}" | sed -e "s/\.lst$/.h/g"`
|
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
/* This file is automatically generated by geninit.sh. DO NOT EDIT! */
|
/* This file is automatically generated by geninit.sh. DO NOT EDIT! */
|
||||||
/*
|
/*
|
||||||
@@ -36,22 +31,24 @@ cat <<EOF
|
|||||||
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
|
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <$header>
|
#include <grub/emu/misc.h>
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
for mod in "$@"; do
|
||||||
|
echo "extern void grub_${mod}_init (void);"
|
||||||
|
echo "extern void grub_${mod}_fini (void);"
|
||||||
|
done
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
void
|
void
|
||||||
grub_init_all (void)
|
grub_init_all (void)
|
||||||
{
|
{
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
while read line; do
|
for mod in "$@"; do
|
||||||
file=`echo $line | cut -f1 -d:`
|
echo "grub_${mod}_init ();"
|
||||||
if echo $@ | grep $file >/dev/null; then
|
done
|
||||||
echo $line | sed -e 's/.*GRUB_MOD_INIT *(\([a-zA-Z0-9_]*\)).*/ grub_\1_init ();/'
|
|
||||||
fi
|
|
||||||
done < ${lst}
|
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
}
|
}
|
||||||
@@ -63,12 +60,9 @@ grub_fini_all (void)
|
|||||||
{
|
{
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
while read line; do
|
for mod in "$@"; do
|
||||||
file=`echo $line | cut -f1 -d:`
|
echo "grub_${mod}_fini ();"
|
||||||
if echo $@ | grep $file >/dev/null; then
|
done
|
||||||
echo $line | sed -e 's/.*GRUB_MOD_INIT *(\([a-zA-Z0-9_]*\)).*/ grub_\1_fini ();/'
|
|
||||||
fi
|
|
||||||
done < ${lst}
|
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,45 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
#
|
|
||||||
# Copyright (C) 2005,2007 Free Software Foundation, Inc.
|
|
||||||
#
|
|
||||||
# This gensymlist.sh is free software; the author
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
lst="$1"
|
|
||||||
shift
|
|
||||||
|
|
||||||
cat <<EOF
|
|
||||||
/* This file is automatically generated by gensymlist.sh. DO NOT EDIT! */
|
|
||||||
/*
|
|
||||||
* GRUB -- GRand Unified Bootloader
|
|
||||||
* Copyright (C) 2005,2007 Free Software Foundation, Inc.
|
|
||||||
*
|
|
||||||
* GRUB is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* GRUB is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
cat <<EOF
|
|
||||||
void grub_init_all (void);
|
|
||||||
void grub_fini_all (void);
|
|
||||||
EOF
|
|
||||||
|
|
||||||
grep -v '^#' "${lst}" | sed -n '/GRUB_MOD_INIT *([a-zA-Z0-9_]*)/{s/.*GRUB_MOD_INIT *(\([a-zA-Z0-9_]*\)).*/void grub_\1_init (void);/;p;}'
|
|
||||||
grep -v '^#' "${lst}" | sed -n '/GRUB_MOD_INIT *([a-zA-Z0-9_]*)/{s/.*GRUB_MOD_INIT *(\([a-zA-Z0-9_]*\)).*/void grub_\1_fini (void);/;p;}'
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
#
|
|
||||||
# Copyright (C) 2002,2006,2008 Free Software Foundation, Inc.
|
|
||||||
#
|
|
||||||
# This gensymlist.sh is free software; the author
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
### The configure script will replace these variables.
|
|
||||||
|
|
||||||
: ${srcdir=@srcdir@}
|
|
||||||
: ${CC=@TARGET_CC@}
|
|
||||||
|
|
||||||
u=
|
|
||||||
grep "^#define HAVE_ASM_USCORE" config.h >/dev/null 2>&1 && u="_"
|
|
||||||
|
|
||||||
$CC @TARGET_CFLAGS@ -DGRUB_SYMBOL_GENERATOR=1 -E -I. -Iinclude -I"$srcdir/include" $* \
|
|
||||||
| grep -v '^#' \
|
|
||||||
| sed -n \
|
|
||||||
-e '/EXPORT_FUNC *([a-zA-Z0-9_]*)/{s/.*EXPORT_FUNC *(\([a-zA-Z0-9_]*\)).*/'"$u"'\1 kernel/;p;}' \
|
|
||||||
-e '/EXPORT_VAR *([a-zA-Z0-9_]*)/{s/.*EXPORT_VAR *(\([a-zA-Z0-9_]*\)).*/'"$u"'\1 kernel/;p;}' \
|
|
||||||
| sort -u
|
|
||||||
@@ -1,468 +0,0 @@
|
|||||||
#! /usr/bin/ruby -w
|
|
||||||
#
|
|
||||||
# Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc.
|
|
||||||
#
|
|
||||||
# This genmk.rb is free software; the author
|
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
|
||||||
# with or without modifications, as long as this notice is preserved.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
module Enumerable
|
|
||||||
def collect_with_index
|
|
||||||
ret = []
|
|
||||||
self.each_with_index do |item, index|
|
|
||||||
ret.push(yield(item, index))
|
|
||||||
end
|
|
||||||
ret
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class String
|
|
||||||
def to_var
|
|
||||||
self.gsub(/[^a-zA-Z0-9_@]/, '_')
|
|
||||||
end
|
|
||||||
|
|
||||||
def suffix(str)
|
|
||||||
self.sub(/\.[^\.]*$/, '') + '.' + str
|
|
||||||
end
|
|
||||||
|
|
||||||
def to_obj
|
|
||||||
self.sub(/\.[^\.]*$/, '').to_var + '.o'
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Image
|
|
||||||
def initialize(dir, name)
|
|
||||||
@dir = dir
|
|
||||||
@name = name
|
|
||||||
@rule_count = 0
|
|
||||||
end
|
|
||||||
attr_reader :dir, :name
|
|
||||||
|
|
||||||
def rule(sources)
|
|
||||||
prefix = @name.to_var
|
|
||||||
@rule_count += 1
|
|
||||||
exe = @name.suffix('exec')
|
|
||||||
objs = sources.collect do |src|
|
|
||||||
raise "unknown source file `#{src}'" if /\.[cS]$/ !~ src
|
|
||||||
prefix + '-' + src.to_obj
|
|
||||||
end
|
|
||||||
objs_str = objs.join(' ')
|
|
||||||
deps = objs.collect {|obj| obj.suffix('d')}
|
|
||||||
deps_str = deps.join(' ')
|
|
||||||
|
|
||||||
"
|
|
||||||
clean-image-#{@name}.#{@rule_count}:
|
|
||||||
rm -f #{@name} #{exe} #{objs_str}
|
|
||||||
|
|
||||||
CLEAN_IMAGE_TARGETS += clean-image-#{@name}.#{@rule_count}
|
|
||||||
|
|
||||||
mostlyclean-image-#{@name}.#{@rule_count}:
|
|
||||||
rm -f #{deps_str}
|
|
||||||
|
|
||||||
MOSTLYCLEAN_IMAGE_TARGETS += mostlyclean-image-#{@name}.#{@rule_count}
|
|
||||||
|
|
||||||
ifneq ($(TARGET_APPLE_CC),1)
|
|
||||||
#{@name}: #{exe}
|
|
||||||
$(OBJCOPY) -O $(#{prefix}_FORMAT) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .reginfo -R .rel.dyn $< $@
|
|
||||||
else
|
|
||||||
ifneq (#{exe},kernel.exec)
|
|
||||||
#{@name}: #{exe} ./grub-macho2img
|
|
||||||
./grub-macho2img $< $@
|
|
||||||
else
|
|
||||||
#{@name}: #{exe} ./grub-macho2img
|
|
||||||
./grub-macho2img --bss $< $@
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
#{exe}: #{objs_str}
|
|
||||||
$(TARGET_CC) -o $@ $^ $(TARGET_LDFLAGS) $(#{prefix}_LDFLAGS)
|
|
||||||
|
|
||||||
" + objs.collect_with_index do |obj, i|
|
|
||||||
src = sources[i]
|
|
||||||
fake_obj = File.basename(src).suffix('o')
|
|
||||||
dep = deps[i]
|
|
||||||
flag = if /\.c$/ =~ src then 'CFLAGS' else 'ASFLAGS' end
|
|
||||||
extra_flags = if /\.S$/ =~ src then '-DASM_FILE=1' else '' end
|
|
||||||
dir = File.dirname(src)
|
|
||||||
|
|
||||||
"#{obj}: #{src} $(#{src}_DEPENDENCIES)
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -DGRUB_FILE=\\\"#{src}\\\" -MD -c -o $@ $<
|
|
||||||
-include #{dep}
|
|
||||||
|
|
||||||
"
|
|
||||||
end.join('')
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
# Use PModule instead Module, to avoid name conflicting.
|
|
||||||
class PModule
|
|
||||||
def initialize(dir, name)
|
|
||||||
@dir = dir
|
|
||||||
@name = name
|
|
||||||
@rule_count = 0
|
|
||||||
end
|
|
||||||
attr_reader :dir, :name
|
|
||||||
|
|
||||||
def rule(sources)
|
|
||||||
prefix = @name.to_var
|
|
||||||
@rule_count += 1
|
|
||||||
objs = sources.collect do |src|
|
|
||||||
raise "unknown source file `#{src}'" if /\.[cS]$/ !~ src
|
|
||||||
prefix + '-' + src.to_obj
|
|
||||||
end
|
|
||||||
objs_str = objs.join(' ')
|
|
||||||
deps = objs.collect {|obj| obj.suffix('d')}
|
|
||||||
deps_str = deps.join(' ')
|
|
||||||
pre_obj = 'pre-' + @name.suffix('o')
|
|
||||||
mod_src = 'mod-' + @name.suffix('c')
|
|
||||||
mod_obj = mod_src.suffix('o')
|
|
||||||
defsym = 'def-' + @name.suffix('lst')
|
|
||||||
undsym = 'und-' + @name.suffix('lst')
|
|
||||||
mod_name = File.basename(@name, '.mod')
|
|
||||||
symbolic_name = mod_name.sub(/\.[^\.]*$/, '')
|
|
||||||
|
|
||||||
"
|
|
||||||
clean-module-#{@name}.#{@rule_count}:
|
|
||||||
rm -f #{@name} #{mod_obj} #{mod_src} #{pre_obj} #{objs_str} #{undsym}
|
|
||||||
|
|
||||||
CLEAN_MODULE_TARGETS += clean-module-#{@name}.#{@rule_count}
|
|
||||||
|
|
||||||
clean-module-#{@name}-symbol.#{@rule_count}:
|
|
||||||
rm -f #{defsym}
|
|
||||||
|
|
||||||
CLEAN_MODULE_TARGETS += clean-module-#{@name}-symbol.#{@rule_count}
|
|
||||||
DEFSYMFILES += #{defsym}
|
|
||||||
mostlyclean-module-#{@name}.#{@rule_count}:
|
|
||||||
rm -f #{deps_str}
|
|
||||||
|
|
||||||
MOSTLYCLEAN_MODULE_TARGETS += mostlyclean-module-#{@name}.#{@rule_count}
|
|
||||||
UNDSYMFILES += #{undsym}
|
|
||||||
|
|
||||||
ifneq ($(TARGET_APPLE_CC),1)
|
|
||||||
#{@name}: #{pre_obj} #{mod_obj} $(TARGET_OBJ2ELF)
|
|
||||||
-rm -f $@
|
|
||||||
$(TARGET_CC) $(#{prefix}_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ #{pre_obj} #{mod_obj}
|
|
||||||
if test ! -z \"$(TARGET_OBJ2ELF)\"; then ./$(TARGET_OBJ2ELF) $@ || (rm -f $@; exit 1); fi
|
|
||||||
if test x$(TARGET_NO_STRIP) != xyes ; then $(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K _grub_mod_init -K _grub_mod_fini -R .note -R .comment $@; fi
|
|
||||||
else
|
|
||||||
#{@name}: #{pre_obj} #{mod_obj} $(TARGET_OBJ2ELF)
|
|
||||||
-rm -f $@
|
|
||||||
-rm -f $@.bin
|
|
||||||
$(TARGET_CC) $(#{prefix}_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@.bin #{pre_obj} #{mod_obj}
|
|
||||||
$(OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -wd1106 -ew2030 -ew2050 -nu -nd $@.bin $@
|
|
||||||
-rm -f $@.bin
|
|
||||||
endif
|
|
||||||
|
|
||||||
#{pre_obj}: $(#{prefix}_DEPENDENCIES) #{objs_str}
|
|
||||||
-rm -f $@
|
|
||||||
$(TARGET_CC) $(#{prefix}_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $@ #{objs_str}
|
|
||||||
PREMODFILES += #{pre_obj}
|
|
||||||
|
|
||||||
#{mod_obj}: #{mod_src}
|
|
||||||
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(#{prefix}_CFLAGS) -DGRUB_FILE=\\\"#{mod_src}\\\" -c -o $@ $<
|
|
||||||
|
|
||||||
#{mod_src}: $(builddir)/moddep.lst $(srcdir)/genmodsrc.sh
|
|
||||||
sh $(srcdir)/genmodsrc.sh '#{mod_name}' $< > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
ifneq ($(TARGET_APPLE_CC),1)
|
|
||||||
#{defsym}: #{pre_obj}
|
|
||||||
$(NM) -g --defined-only -P -p $< | sed 's/^\\([^ ]*\\).*/\\1 #{mod_name}/' > $@
|
|
||||||
else
|
|
||||||
#{defsym}: #{pre_obj}
|
|
||||||
$(NM) -g -P -p $< | grep -E '^[a-zA-Z0-9_]* [TDS]' | sed 's/^\\([^ ]*\\).*/\\1 #{mod_name}/' > $@
|
|
||||||
endif
|
|
||||||
|
|
||||||
#{undsym}: #{pre_obj}
|
|
||||||
echo '#{mod_name}' > $@
|
|
||||||
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@
|
|
||||||
|
|
||||||
" + objs.collect_with_index do |obj, i|
|
|
||||||
src = sources[i]
|
|
||||||
fake_obj = File.basename(src).suffix('o')
|
|
||||||
extra_target = obj.sub(/\.[^\.]*$/, '') + '-extra'
|
|
||||||
command = 'cmd-' + obj.suffix('lst')
|
|
||||||
fs = 'fs-' + obj.suffix('lst')
|
|
||||||
partmap = 'partmap-' + obj.suffix('lst')
|
|
||||||
handler = 'handler-' + obj.suffix('lst')
|
|
||||||
terminal = 'terminal-' + obj.suffix('lst')
|
|
||||||
parttool = 'parttool-' + obj.suffix('lst')
|
|
||||||
video = 'video-' + obj.suffix('lst')
|
|
||||||
dep = deps[i]
|
|
||||||
flag = if /\.c$/ =~ src then 'CFLAGS' else 'ASFLAGS' end
|
|
||||||
extra_flags = if /\.S$/ =~ src then '-DASM_FILE=1' else '' end
|
|
||||||
dir = File.dirname(src)
|
|
||||||
|
|
||||||
"#{obj}: #{src} $(#{src}_DEPENDENCIES)
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -DGRUB_FILE=\\\"#{src}\\\" -MD -c -o $@ $<
|
|
||||||
-include #{dep}
|
|
||||||
|
|
||||||
clean-module-#{extra_target}.#{@rule_count}:
|
|
||||||
rm -f #{command} #{fs} #{partmap} #{handler} #{parttool} #{video} #{terminal}
|
|
||||||
|
|
||||||
CLEAN_MODULE_TARGETS += clean-module-#{extra_target}.#{@rule_count}
|
|
||||||
|
|
||||||
COMMANDFILES += #{command}
|
|
||||||
FSFILES += #{fs}
|
|
||||||
PARTTOOLFILES += #{parttool}
|
|
||||||
PARTMAPFILES += #{partmap}
|
|
||||||
HANDLERFILES += #{handler}
|
|
||||||
TERMINALFILES += #{terminal}
|
|
||||||
VIDEOFILES += #{video}
|
|
||||||
|
|
||||||
#{command}: #{src} $(#{src}_DEPENDENCIES) gencmdlist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/gencmdlist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
#{fs}: #{src} $(#{src}_DEPENDENCIES) genfslist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} -DGRUB_LST_GENERATOR $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/genfslist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
#{parttool}: #{src} $(#{src}_DEPENDENCIES) genparttoollist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/genparttoollist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
#{partmap}: #{src} $(#{src}_DEPENDENCIES) genpartmaplist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} -DGRUB_LST_GENERATOR $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/genpartmaplist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
#{handler}: #{src} $(#{src}_DEPENDENCIES) genhandlerlist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/genhandlerlist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
#{terminal}: #{src} $(#{src}_DEPENDENCIES) genterminallist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/genterminallist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
#{video}: #{src} $(#{src}_DEPENDENCIES) genvideolist.sh
|
|
||||||
set -e; \
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} -DGRUB_LST_GENERATOR $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
|
||||||
| sh $(srcdir)/genvideolist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
|
||||||
|
|
||||||
"
|
|
||||||
end.join('')
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Utility
|
|
||||||
def initialize(dir, name)
|
|
||||||
@dir = dir
|
|
||||||
@name = name
|
|
||||||
@rule_count = 0
|
|
||||||
end
|
|
||||||
def print_tail()
|
|
||||||
prefix = @name.to_var
|
|
||||||
print "#{@name}: $(#{prefix}_DEPENDENCIES) $(#{prefix}_OBJECTS)
|
|
||||||
$(CC) -o $@ $(#{prefix}_OBJECTS) $(LDFLAGS) $(#{prefix}_LDFLAGS)
|
|
||||||
|
|
||||||
"
|
|
||||||
end
|
|
||||||
attr_reader :dir, :name
|
|
||||||
|
|
||||||
def rule(sources)
|
|
||||||
prefix = @name.to_var
|
|
||||||
@rule_count += 1
|
|
||||||
objs = sources.collect do |src|
|
|
||||||
raise "unknown source file `#{src}'" if /\.[cS]$/ !~ src
|
|
||||||
prefix + '-' + src.to_obj
|
|
||||||
end
|
|
||||||
objs_str = objs.join(' ');
|
|
||||||
deps = objs.collect {|obj| obj.suffix('d')}
|
|
||||||
deps_str = deps.join(' ');
|
|
||||||
|
|
||||||
"
|
|
||||||
clean-utility-#{@name}.#{@rule_count}:
|
|
||||||
rm -f #{@name}$(EXEEXT) #{objs_str}
|
|
||||||
|
|
||||||
CLEAN_UTILITY_TARGETS += clean-utility-#{@name}.#{@rule_count}
|
|
||||||
|
|
||||||
mostlyclean-utility-#{@name}.#{@rule_count}:
|
|
||||||
rm -f #{deps_str}
|
|
||||||
|
|
||||||
MOSTLYCLEAN_UTILITY_TARGETS += mostlyclean-utility-#{@name}.#{@rule_count}
|
|
||||||
|
|
||||||
#{prefix}_OBJECTS += #{objs_str}
|
|
||||||
|
|
||||||
" + objs.collect_with_index do |obj, i|
|
|
||||||
src = sources[i]
|
|
||||||
fake_obj = File.basename(src).suffix('o')
|
|
||||||
dep = deps[i]
|
|
||||||
dir = File.dirname(src)
|
|
||||||
|
|
||||||
"#{obj}: #{src} $(#{src}_DEPENDENCIES)
|
|
||||||
$(CC) -I#{dir} -I$(srcdir)/#{dir} $(CPPFLAGS) $(CFLAGS) -DGRUB_UTIL=1 $(#{prefix}_CFLAGS) -DGRUB_FILE=\\\"#{src}\\\" -MD -c -o $@ $<
|
|
||||||
-include #{dep}
|
|
||||||
|
|
||||||
"
|
|
||||||
end.join('')
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Program
|
|
||||||
def initialize(dir, name)
|
|
||||||
@dir = dir
|
|
||||||
@name = name
|
|
||||||
end
|
|
||||||
attr_reader :dir, :name
|
|
||||||
|
|
||||||
def print_tail()
|
|
||||||
prefix = @name.to_var
|
|
||||||
print "CLEANFILES += #{@name} $(#{prefix}_OBJECTS)
|
|
||||||
ifeq ($(#{prefix}_RELOCATABLE),yes)
|
|
||||||
#{@name}: $(#{prefix}_DEPENDENCIES) $(#{prefix}_OBJECTS)
|
|
||||||
$(TARGET_CC) -Wl,-r,-d -o $@ $(#{prefix}_OBJECTS) $(TARGET_LDFLAGS) $(#{prefix}_LDFLAGS)
|
|
||||||
if test x$(TARGET_NO_STRIP) != xyes ; then $(STRIP) --strip-unneeded -K start -R .note -R .comment $@; fi
|
|
||||||
else
|
|
||||||
#{@name}: $(#{prefix}_DEPENDENCIES) $(#{prefix}_OBJECTS)
|
|
||||||
$(TARGET_CC) -o $@ $(#{prefix}_OBJECTS) $(TARGET_LDFLAGS) $(#{prefix}_LDFLAGS)
|
|
||||||
if test x$(TARGET_NO_STRIP) != xyes ; then $(STRIP) -R .rel.dyn -R .reginfo -R .note -R .comment $@; fi
|
|
||||||
endif
|
|
||||||
|
|
||||||
"
|
|
||||||
end
|
|
||||||
|
|
||||||
def rule(sources)
|
|
||||||
prefix = @name.to_var
|
|
||||||
objs = sources.collect do |src|
|
|
||||||
raise "unknown source file `#{src}'" if /\.[cS]$/ !~ src
|
|
||||||
prefix + '-' + src.to_obj
|
|
||||||
end
|
|
||||||
deps = objs.collect {|obj| obj.suffix('d')}
|
|
||||||
deps_str = deps.join(' ');
|
|
||||||
|
|
||||||
"MOSTLYCLEANFILES += #{deps_str}
|
|
||||||
|
|
||||||
" + objs.collect_with_index do |obj, i|
|
|
||||||
src = sources[i]
|
|
||||||
fake_obj = File.basename(src).suffix('o')
|
|
||||||
dep = deps[i]
|
|
||||||
flag = if /\.c$/ =~ src then 'CFLAGS' else 'ASFLAGS' end
|
|
||||||
extra_flags = if /\.S$/ =~ src then '-DASM_FILE=1' else '' end
|
|
||||||
dir = File.dirname(src)
|
|
||||||
|
|
||||||
"#{obj}: #{src} $(#{src}_DEPENDENCIES)
|
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -DGRUB_FILE=\\\"#{src}\\\" -MD -c -o $@ $<
|
|
||||||
|
|
||||||
-include #{dep}
|
|
||||||
|
|
||||||
#{prefix}_OBJECTS += #{obj}
|
|
||||||
"
|
|
||||||
end.join('')
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
class Script
|
|
||||||
def initialize(dir, name)
|
|
||||||
@dir = dir
|
|
||||||
@name = name
|
|
||||||
end
|
|
||||||
attr_reader :dir, :name
|
|
||||||
|
|
||||||
def rule(sources)
|
|
||||||
if sources.length != 1
|
|
||||||
raise "only a single source file must be specified for a script"
|
|
||||||
end
|
|
||||||
src = sources[0]
|
|
||||||
if /\.in$/ !~ src
|
|
||||||
raise "unknown source file `#{src}'"
|
|
||||||
end
|
|
||||||
|
|
||||||
"CLEANFILES += #{@name}
|
|
||||||
|
|
||||||
#{@name}: #{src} $(#{src}_DEPENDENCIES) config.status
|
|
||||||
./config.status --file=-:#{src} | sed -e 's,@pkglib_DATA@,$(pkglib_DATA),g' > $@
|
|
||||||
chmod +x $@
|
|
||||||
|
|
||||||
"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
images = []
|
|
||||||
utils = []
|
|
||||||
pmodules = []
|
|
||||||
programs = []
|
|
||||||
scripts = []
|
|
||||||
|
|
||||||
l = gets
|
|
||||||
print l
|
|
||||||
print "# Generated by genmk.rb, please don't edit!\n"
|
|
||||||
|
|
||||||
cont = false
|
|
||||||
str = nil
|
|
||||||
while l = gets
|
|
||||||
if cont
|
|
||||||
str += l
|
|
||||||
else
|
|
||||||
str = l
|
|
||||||
end
|
|
||||||
|
|
||||||
print l
|
|
||||||
cont = (/\\$/ =~ l)
|
|
||||||
unless cont
|
|
||||||
str.gsub!(/\\\n/, ' ')
|
|
||||||
|
|
||||||
if /^([a-zA-Z0-9_]+)\s*\+?=\s*(.*?)\s*$/ =~ str
|
|
||||||
var, args = $1, $2
|
|
||||||
|
|
||||||
if var =~ /^([a-zA-Z0-9_]+)_([A-Z]+)$/
|
|
||||||
prefix, type = $1, $2
|
|
||||||
|
|
||||||
case type
|
|
||||||
when 'IMAGES'
|
|
||||||
images += args.split(/\s+/).collect do |img|
|
|
||||||
Image.new(prefix, img)
|
|
||||||
end
|
|
||||||
|
|
||||||
when 'MODULES'
|
|
||||||
pmodules += args.split(/\s+/).collect do |pmod|
|
|
||||||
PModule.new(prefix, pmod)
|
|
||||||
end
|
|
||||||
|
|
||||||
when 'UTILITIES'
|
|
||||||
utils += args.split(/\s+/).collect do |util|
|
|
||||||
Utility.new(prefix, util)
|
|
||||||
end
|
|
||||||
|
|
||||||
when 'PROGRAMS'
|
|
||||||
programs += args.split(/\s+/).collect do |prog|
|
|
||||||
Program.new(prefix, prog)
|
|
||||||
end
|
|
||||||
|
|
||||||
when 'SCRIPTS'
|
|
||||||
scripts += args.split(/\s+/).collect do |script|
|
|
||||||
Script.new(prefix, script)
|
|
||||||
end
|
|
||||||
|
|
||||||
when 'SOURCES'
|
|
||||||
if img = images.detect() {|i| i.name.to_var == prefix}
|
|
||||||
print img.rule(args.split(/\s+/))
|
|
||||||
elsif pmod = pmodules.detect() {|m| m.name.to_var == prefix}
|
|
||||||
print pmod.rule(args.split(/\s+/))
|
|
||||||
elsif util = utils.detect() {|u| u.name.to_var == prefix}
|
|
||||||
print util.rule(args.split(/\s+/))
|
|
||||||
elsif program = programs.detect() {|u| u.name.to_var == prefix}
|
|
||||||
print program.rule(args.split(/\s+/))
|
|
||||||
elsif script = scripts.detect() {|s| s.name.to_var == prefix}
|
|
||||||
print script.rule(args.split(/\s+/))
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
utils.each {|util| util.print_tail()}
|
|
||||||
programs.each {|program| program.print_tail()}
|
|
||||||
|
|
||||||
@@ -0,0 +1,537 @@
|
|||||||
|
#! /usr/bin/python
|
||||||
|
|
||||||
|
#
|
||||||
|
# This is the python script used to generate Makefile.tpl
|
||||||
|
#
|
||||||
|
|
||||||
|
GRUB_PLATFORMS = [ "emu", "i386_pc", "i386_efi", "i386_qemu", "i386_coreboot",
|
||||||
|
"i386_multiboot", "i386_ieee1275", "x86_64_efi",
|
||||||
|
"mips_yeeloong", "sparc64_ieee1275",
|
||||||
|
"powerpc_ieee1275" ]
|
||||||
|
|
||||||
|
GROUPS = {}
|
||||||
|
GROUPS["i386"] = [ "i386_pc", "i386_efi", "i386_qemu", "i386_coreboot", "i386_multiboot", "i386_ieee1275" ]
|
||||||
|
GROUPS["x86_64"] = [ "x86_64_efi" ]
|
||||||
|
GROUPS["x86"] = GROUPS["i386"] + GROUPS["x86_64"]
|
||||||
|
GROUPS["x86_efi"] = [ "i386_efi", "x86_64_efi" ]
|
||||||
|
|
||||||
|
GROUPS["nopc"] = GRUB_PLATFORMS[:]; GROUPS["nopc"].remove("i386_pc")
|
||||||
|
GROUPS["x86_efi_pc"] = GROUPS["x86_efi"] + ["i386_pc"]
|
||||||
|
|
||||||
|
GROUPS["x86_noefi"] = GROUPS["x86"][:]; GROUPS["x86_noefi"].remove("i386_efi"); GROUPS["x86_noefi"].remove("x86_64_efi")
|
||||||
|
GROUPS["i386_noefi"] = GROUPS["i386"][:]; GROUPS["i386_noefi"].remove("i386_efi")
|
||||||
|
|
||||||
|
GROUPS["x86_noieee1275"] = GROUPS["x86"][:]; GROUPS["x86_noieee1275"].remove("i386_ieee1275")
|
||||||
|
GROUPS["i386_noieee1275"] = GROUPS["i386"][:]; GROUPS["i386_noieee1275"].remove("i386_ieee1275")
|
||||||
|
|
||||||
|
GROUPS["i386_noefi_noieee1275"] = GROUPS["i386_noefi"][:]; GROUPS["i386_noefi_noieee1275"].remove("i386_ieee1275")
|
||||||
|
|
||||||
|
GROUPS["i386_pc_qemu_coreboot"] = ["i386_pc", "i386_qemu", "i386_coreboot"]
|
||||||
|
GROUPS["i386_coreboot_multiboot"] = ["i386_coreboot", "i386_multiboot"]
|
||||||
|
GROUPS["i386_coreboot_multiboot_qemu"] = ["i386_coreboot", "i386_multiboot", "i386_qemu"]
|
||||||
|
GROUPS["i386_pc_coreboot_multiboot_qemu"] = ["i386_pc", "i386_coreboot", "i386_multiboot", "i386_qemu"]
|
||||||
|
|
||||||
|
GROUPS["mips"] = [ "mips_yeeloong" ]
|
||||||
|
GROUPS["sparc64"] = [ "sparc64_ieee1275" ]
|
||||||
|
GROUPS["powerpc"] = [ "powerpc_ieee1275" ]
|
||||||
|
|
||||||
|
GROUPS["nosparc64"] = GRUB_PLATFORMS[:]; GROUPS["nosparc64"].remove("sparc64_ieee1275")
|
||||||
|
GROUPS["x86_noefi_mips"] = GROUPS["x86_noefi"] + GROUPS["mips"]
|
||||||
|
|
||||||
|
GROUPS["ieee1275"] = [ "i386_ieee1275", "sparc64_ieee1275", "powerpc_ieee1275" ]
|
||||||
|
GROUPS["noieee1275"] = GRUB_PLATFORMS[:]
|
||||||
|
for i in GROUPS["ieee1275"]: GROUPS["noieee1275"].remove(i)
|
||||||
|
GROUPS["ieee1275_mips"] = GROUPS["ieee1275"] + GROUPS["mips"]
|
||||||
|
|
||||||
|
GROUPS["pci"] = GROUPS["x86"] + GROUPS["mips"]
|
||||||
|
|
||||||
|
GROUPS["noemu"] = GRUB_PLATFORMS[:]; GROUPS["noemu"].remove("emu")
|
||||||
|
GROUPS["noemu_noieee1275"] = GRUB_PLATFORMS[:]
|
||||||
|
for i in ["emu"] + GROUPS["ieee1275"]: GROUPS["noemu_noieee1275"].remove(i)
|
||||||
|
|
||||||
|
GROUPS["common"] = GRUB_PLATFORMS[:]
|
||||||
|
|
||||||
|
#
|
||||||
|
# Create platform => groups reverse map, where groups covering that
|
||||||
|
# platform are ordered by their sizes
|
||||||
|
#
|
||||||
|
RMAP = {}
|
||||||
|
for platform in GRUB_PLATFORMS:
|
||||||
|
# initialize with platform itself as a group
|
||||||
|
RMAP[platform] = [ platform ]
|
||||||
|
|
||||||
|
for k in GROUPS.keys():
|
||||||
|
v = GROUPS[k]
|
||||||
|
# skip groups that don't cover this platform
|
||||||
|
if platform not in v: continue
|
||||||
|
|
||||||
|
bigger = []
|
||||||
|
smaller = []
|
||||||
|
# partition currently known groups based on their size
|
||||||
|
for group in RMAP[platform]:
|
||||||
|
if group in GRUB_PLATFORMS: smaller.append(group)
|
||||||
|
elif len(GROUPS[group]) < len(v): smaller.append(group)
|
||||||
|
else: bigger.append(group)
|
||||||
|
# insert in the middle
|
||||||
|
RMAP[platform] = smaller + [ k ] + bigger
|
||||||
|
|
||||||
|
#
|
||||||
|
# Global variables
|
||||||
|
#
|
||||||
|
GVARS = []
|
||||||
|
|
||||||
|
def gvar_add(var, value):
|
||||||
|
if var not in GVARS:
|
||||||
|
GVARS.append(var)
|
||||||
|
return var + " += " + value + "\n"
|
||||||
|
|
||||||
|
def global_variable_initializers():
|
||||||
|
r = ""
|
||||||
|
for var in GVARS:
|
||||||
|
r += var + " ?= \n"
|
||||||
|
return r
|
||||||
|
|
||||||
|
#
|
||||||
|
# Per PROGRAM/SCRIPT variables
|
||||||
|
#
|
||||||
|
|
||||||
|
def var_set(var, value):
|
||||||
|
return var + " = " + value + "\n"
|
||||||
|
|
||||||
|
def var_add(var, value):
|
||||||
|
return var + " += " + value + "\n"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Autogen constructs
|
||||||
|
#
|
||||||
|
|
||||||
|
def set_canonical_name_suffix(suffix): return "[+ % name `export cname=$(echo %s" + suffix + " | sed -e 's/[^0-9A-Za-z@_]/_/g')` +]"
|
||||||
|
def cname(): return "[+ % name `echo $cname` +]"
|
||||||
|
|
||||||
|
def rule(target, source, cmd):
|
||||||
|
if cmd[0] == "\n":
|
||||||
|
return "\n" + target + ": " + source + cmd.replace("\n", "\n\t") + "\n"
|
||||||
|
else:
|
||||||
|
return "\n" + target + ": " + source + "\n\t" + cmd.replace("\n", "\n\t") + "\n"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Template for keys with platform names as values, for example:
|
||||||
|
#
|
||||||
|
# kernel = {
|
||||||
|
# nostrip = emu;
|
||||||
|
# ...
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
def if_platform_tagged(platform, tag, snippet_if, snippet_else=None):
|
||||||
|
r = ""
|
||||||
|
r += "[+ IF " + tag + " defined +]"
|
||||||
|
r += "[+ FOR " + tag + " +][+ CASE " + tag + " +]"
|
||||||
|
for group in RMAP[platform]:
|
||||||
|
r += "[+ = \"" + group + "\" +]" + snippet_if
|
||||||
|
|
||||||
|
if snippet_else != None: r += "[+ * +]" + snippet_else
|
||||||
|
r += "[+ ESAC +][+ ENDFOR +]"
|
||||||
|
|
||||||
|
if snippet_else == None:
|
||||||
|
r += "[+ ENDIF +]"
|
||||||
|
return r
|
||||||
|
|
||||||
|
r += "[+ ELSE +]" + snippet_else + "[+ ENDIF +]"
|
||||||
|
return r
|
||||||
|
|
||||||
|
#
|
||||||
|
# Template for tagged values
|
||||||
|
#
|
||||||
|
# module = {
|
||||||
|
# extra_dist = ...
|
||||||
|
# extra_dist = ...
|
||||||
|
# ...
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
def foreach_value(tag, closure):
|
||||||
|
return "[+ FOR " + tag + " +]" + closure("[+ ." + tag + " +]") + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Template for handling best matched values for a platform, for example:
|
||||||
|
#
|
||||||
|
# module = {
|
||||||
|
# cflags = '-Wall';
|
||||||
|
# emu_cflags = '-Wall -DGRUB_EMU=1';
|
||||||
|
# ...
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
def foreach_platform_specific_value(platform, suffix, nonetag, closure):
|
||||||
|
r = ""
|
||||||
|
for group in RMAP[platform]:
|
||||||
|
gtag = group + suffix
|
||||||
|
|
||||||
|
if group == RMAP[platform][0]:
|
||||||
|
r += "[+ IF " + gtag + " +]"
|
||||||
|
else:
|
||||||
|
r += "[+ ELIF " + gtag + " +]"
|
||||||
|
|
||||||
|
r += "[+ FOR " + gtag + " +]" + closure("[+ ." + gtag + " +]") + "[+ ENDFOR +]"
|
||||||
|
r += "[+ ELSE +][+ FOR " + nonetag + " +]" + closure("[+ ." + nonetag + " +]") + "[+ ENDFOR +][+ ENDIF +]"
|
||||||
|
return r
|
||||||
|
|
||||||
|
#
|
||||||
|
# Template for handling values from sum of all groups for a platform,
|
||||||
|
# for example:
|
||||||
|
#
|
||||||
|
# module = {
|
||||||
|
# common = kern/misc.c;
|
||||||
|
# emu = kern/emu/misc.c;
|
||||||
|
# ...
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
def foreach_platform_value (platform, suffix, closure):
|
||||||
|
r = ""
|
||||||
|
for group in RMAP[platform]:
|
||||||
|
gtag = group + suffix
|
||||||
|
|
||||||
|
r += "[+ IF " + gtag + " +]"
|
||||||
|
r += "[+ FOR " + gtag + " +]" + closure("[+ ." + gtag + " +]") + "[+ ENDFOR +]"
|
||||||
|
r += "[+ ENDIF +]"
|
||||||
|
return r
|
||||||
|
|
||||||
|
#
|
||||||
|
# Template for gaurding with platform specific "enable" keys, for example:
|
||||||
|
#
|
||||||
|
# module = {
|
||||||
|
# name = pci;
|
||||||
|
# noemu = bus/pci.c;
|
||||||
|
# emu = bus/emu/pci.c;
|
||||||
|
# emu = commands/lspci.c;
|
||||||
|
#
|
||||||
|
# enable = emu;
|
||||||
|
# enable = i386_pc;
|
||||||
|
# enable = x86_efi;
|
||||||
|
# enable = i386_ieee1275;
|
||||||
|
# enable = i386_coreboot;
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
def foreach_enabled_platform(closure):
|
||||||
|
r = "[+ IF - enable undefined +]"
|
||||||
|
for platform in GRUB_PLATFORMS:
|
||||||
|
r += "\nif COND_" + platform + "\n" + closure(platform) + "endif\n"
|
||||||
|
r += "[+ ELSE +]"
|
||||||
|
for platform in GRUB_PLATFORMS:
|
||||||
|
x = "\nif COND_" + platform + "\n" + closure(platform) + "endif\n"
|
||||||
|
r += if_platform_tagged(platform, "enable", x)
|
||||||
|
r += "[+ ENDIF +]"
|
||||||
|
return r
|
||||||
|
|
||||||
|
#
|
||||||
|
# Template for gaurding with platform specific automake conditionals,
|
||||||
|
# for example:
|
||||||
|
#
|
||||||
|
# module = {
|
||||||
|
# name = usb;
|
||||||
|
# common = bus/usb/usb.c;
|
||||||
|
# noemu = bus/usb/usbtrans.c;
|
||||||
|
# noemu = bus/usb/usbhub.c;
|
||||||
|
# enable = emu;
|
||||||
|
# enable = i386;
|
||||||
|
# enable = mips_yeeloong;
|
||||||
|
# emu_condition = COND_GRUB_EMU_USB;
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
def under_platform_specific_conditionals(platform, snippet):
|
||||||
|
r = foreach_platform_specific_value(platform, "_condition", "condition", lambda cond: "if " + cond + "\n")
|
||||||
|
r += snippet
|
||||||
|
r += foreach_platform_specific_value(platform, "_condition", "condition", lambda cond: "endif " + cond + "\n")
|
||||||
|
return r
|
||||||
|
|
||||||
|
def platform_specific_values(platform, suffix, nonetag):
|
||||||
|
return foreach_platform_specific_value(platform, suffix, nonetag,
|
||||||
|
lambda value: value + " ")
|
||||||
|
|
||||||
|
def platform_values(platform, suffix):
|
||||||
|
return foreach_platform_value(platform, suffix, lambda value: value + " ")
|
||||||
|
|
||||||
|
def extra_dist():
|
||||||
|
return foreach_value("extra_dist", lambda value: value + " ")
|
||||||
|
|
||||||
|
def platform_sources(p): return platform_values(p, "")
|
||||||
|
def platform_nodist_sources(p): return platform_values(p, "_nodist")
|
||||||
|
def platform_dependencies(p): return platform_values(p, "dependencies", "_dependencies")
|
||||||
|
|
||||||
|
def platform_startup(p): return platform_specific_values(p, "_startup", "startup")
|
||||||
|
def platform_ldadd(p): return platform_specific_values(p, "_ldadd", "ldadd")
|
||||||
|
def platform_cflags(p): return platform_specific_values(p, "_cflags", "cflags")
|
||||||
|
def platform_ldflags(p): return platform_specific_values(p, "_ldflags", "ldflags")
|
||||||
|
def platform_cppflags(p): return platform_specific_values(p, "_cppflags", "cppflags")
|
||||||
|
def platform_ccasflags(p): return platform_specific_values(p, "_ccasflags", "ccasflags")
|
||||||
|
def platform_stripflags(p): return platform_specific_values(p, "_stripflags", "stripflags")
|
||||||
|
def platform_objcopyflags(p): return platform_specific_values(p, "_objcopyflags", "objcopyflags")
|
||||||
|
|
||||||
|
def module(platform):
|
||||||
|
r = set_canonical_name_suffix(".module")
|
||||||
|
|
||||||
|
r += gvar_add("noinst_PROGRAMS", "[+ name +].module")
|
||||||
|
r += gvar_add("MODULE_FILES", "[+ name +].module$(EXEEXT)")
|
||||||
|
|
||||||
|
r += var_set(cname() + "_SOURCES", platform_sources(platform) + " ## platform sources")
|
||||||
|
r += var_set("nodist_" + cname() + "_SOURCES", platform_nodist_sources(platform) + " ## platform nodist sources")
|
||||||
|
r += var_set(cname() + "_LDADD", platform_ldadd(platform))
|
||||||
|
r += var_set(cname() + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_MODULE) " + platform_cflags(platform))
|
||||||
|
r += var_set(cname() + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_MODULE) " + platform_ldflags(platform))
|
||||||
|
r += var_set(cname() + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_MODULE) " + platform_cppflags(platform))
|
||||||
|
r += var_set(cname() + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_MODULE) " + platform_ccasflags(platform))
|
||||||
|
# r += var_set(cname() + "_DEPENDENCIES", platform_dependencies(platform) + " " + platform_ldadd(platform))
|
||||||
|
|
||||||
|
r += gvar_add("EXTRA_DIST", extra_dist())
|
||||||
|
r += gvar_add("BUILT_SOURCES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
r += gvar_add("CLEANFILES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
|
||||||
|
r += gvar_add("DEF_FILES", "def-[+ name +].lst")
|
||||||
|
r += gvar_add("UND_FILES", "und-[+ name +].lst")
|
||||||
|
r += gvar_add("MOD_FILES", "[+ name +].mod")
|
||||||
|
r += gvar_add("platform_DATA", "[+ name +].mod")
|
||||||
|
r += gvar_add("CLEANFILES", "def-[+ name +].lst und-[+ name +].lst mod-[+ name +].c mod-[+ name +].o [+ name +].mod")
|
||||||
|
|
||||||
|
r += gvar_add("COMMAND_FILES", "command-[+ name +].lst")
|
||||||
|
r += gvar_add("FS_FILES", "fs-[+ name +].lst")
|
||||||
|
r += gvar_add("VIDEO_FILES", "video-[+ name +].lst")
|
||||||
|
r += gvar_add("PARTMAP_FILES", "partmap-[+ name +].lst")
|
||||||
|
r += gvar_add("HANDLER_FILES", "handler-[+ name +].lst")
|
||||||
|
r += gvar_add("PARTTOOL_FILES", "parttool-[+ name +].lst")
|
||||||
|
r += gvar_add("TERMINAL_FILES", "terminal-[+ name +].lst")
|
||||||
|
r += gvar_add("CLEANFILES", "command-[+ name +].lst fs-[+ name +].lst")
|
||||||
|
r += gvar_add("CLEANFILES", "handler-[+ name +].lst terminal-[+ name +].lst")
|
||||||
|
r += gvar_add("CLEANFILES", "video-[+ name +].lst partmap-[+ name +].lst parttool-[+ name +].lst")
|
||||||
|
|
||||||
|
r += gvar_add("CLEANFILES", "[+ name +].pp")
|
||||||
|
r += """
|
||||||
|
[+ name +].pp: $(""" + cname() + """_SOURCES) $(nodist_""" + cname() + """_SOURCES)
|
||||||
|
$(TARGET_CPP) -DGRUB_LST_GENERATOR $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(""" + cname() + """_CPPFLAGS) $(CPPFLAGS) $^ > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
def-[+ name +].lst: [+ name +].module$(EXEEXT)
|
||||||
|
if test x$(USE_APPLE_CC_FIXES) = xyes; then \
|
||||||
|
$(NM) -g -P -p $< | grep -E '^[a-zA-Z0-9_]* [TDS]' | sed "s/^\\([^ ]*\\).*/\\1 [+ name +]/" >> $@; \
|
||||||
|
else \
|
||||||
|
$(NM) -g --defined-only -P -p $< | sed "s/^\\([^ ]*\\).*/\\1 [+ name +]/" >> $@; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
und-[+ name +].lst: [+ name +].module$(EXEEXT)
|
||||||
|
$(NM) -u -P -p $< | sed "s/^\\([^ ]*\\).*/\\1 [+ name +]/" >> $@
|
||||||
|
|
||||||
|
mod-[+ name +].c: [+ name +].module$(EXEEXT) moddep.lst genmodsrc.sh
|
||||||
|
sh $(srcdir)/genmodsrc.sh [+ name +] moddep.lst > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
mod-[+ name +].o: mod-[+ name +].c
|
||||||
|
$(TARGET_CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(""" + cname() + """_CPPFLAGS) $(CPPFLAGS) $(""" + cname() + """_CFLAGS) $(CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
[+ name +].mod: [+ name +].module$(EXEEXT) mod-[+ name +].o
|
||||||
|
if test x$(USE_APPLE_CC_FIXES) = xyes; then \
|
||||||
|
$(CCLD) $(""" + cname() + """_LDFLAGS) $(LDFLAGS) -o $@.bin $^; \
|
||||||
|
$(OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -wd1106 -nu -nd $@.bin $@; \
|
||||||
|
rm -f $@.bin; \
|
||||||
|
else \
|
||||||
|
$(CCLD) -o $@ $(""" + cname() + """_LDFLAGS) $(LDFLAGS) $^; \
|
||||||
|
if test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_OBJ2ELF) $@ || (rm -f $@; exit 1); fi; \
|
||||||
|
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K _grub_mod_init -K _grub_mod_fini -R .note -R .comment $@; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
command-[+ name +].lst: [+ name +].pp $(srcdir)/gencmdlist.sh
|
||||||
|
cat $< | sh $(srcdir)/gencmdlist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
fs-[+ name +].lst: [+ name +].pp $(srcdir)/genfslist.sh
|
||||||
|
cat $< | sh $(srcdir)/genfslist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
video-[+ name +].lst: [+ name +].pp $(srcdir)/genvideolist.sh
|
||||||
|
cat $< | sh $(srcdir)/genvideolist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
partmap-[+ name +].lst: [+ name +].pp $(srcdir)/genpartmaplist.sh
|
||||||
|
cat $< | sh $(srcdir)/genpartmaplist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
parttool-[+ name +].lst: [+ name +].pp $(srcdir)/genparttoollist.sh
|
||||||
|
cat $< | sh $(srcdir)/genparttoollist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
handler-[+ name +].lst: [+ name +].pp $(srcdir)/genhandlerlist.sh
|
||||||
|
cat $< | sh $(srcdir)/genhandlerlist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
terminal-[+ name +].lst: [+ name +].pp $(srcdir)/genterminallist.sh
|
||||||
|
cat $< | sh $(srcdir)/genterminallist.sh [+ name +] > $@ || (rm -f $@; exit 1)
|
||||||
|
"""
|
||||||
|
return r
|
||||||
|
|
||||||
|
def kernel(platform):
|
||||||
|
r = set_canonical_name_suffix(".exec")
|
||||||
|
r += gvar_add("noinst_PROGRAMS", "[+ name +].exec")
|
||||||
|
r += var_set(cname() + "_SOURCES", platform_startup(platform))
|
||||||
|
r += var_add(cname() + "_SOURCES", platform_sources(platform))
|
||||||
|
r += var_set("nodist_" + cname() + "_SOURCES", platform_nodist_sources(platform) + " ## platform nodist sources")
|
||||||
|
r += var_set(cname() + "_LDADD", platform_ldadd(platform))
|
||||||
|
r += var_set(cname() + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_KERNEL) " + platform_cflags(platform))
|
||||||
|
r += var_set(cname() + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_KERNEL) " + platform_ldflags(platform))
|
||||||
|
r += var_set(cname() + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) " + platform_cppflags(platform))
|
||||||
|
r += var_set(cname() + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) " + platform_ccasflags(platform))
|
||||||
|
r += var_set(cname() + "_STRIPFLAGS", "$(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) " + platform_stripflags(platform))
|
||||||
|
# r += var_set(cname() + "_DEPENDENCIES", platform_dependencies(platform) + " " + platform_ldadd(platform))
|
||||||
|
|
||||||
|
r += gvar_add("EXTRA_DIST", extra_dist())
|
||||||
|
r += gvar_add("BUILT_SOURCES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
r += gvar_add("CLEANFILES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
|
||||||
|
r += gvar_add("platform_DATA", "[+ name +].img")
|
||||||
|
r += gvar_add("CLEANFILES", "[+ name +].img")
|
||||||
|
r += rule("[+ name +].img", "[+ name +].exec$(EXEEXT)",
|
||||||
|
if_platform_tagged(platform, "nostrip", "cp $< $@",
|
||||||
|
"$(STRIP) $(" + cname() + "_STRIPFLAGS) -o $@ $<"))
|
||||||
|
return r
|
||||||
|
|
||||||
|
def image(platform):
|
||||||
|
r = set_canonical_name_suffix(".image")
|
||||||
|
r += gvar_add("noinst_PROGRAMS", "[+ name +].image")
|
||||||
|
r += var_set(cname() + "_SOURCES", platform_sources(platform))
|
||||||
|
r += var_set("nodist_" + cname() + "_SOURCES", platform_nodist_sources(platform) + "## platform nodist sources")
|
||||||
|
r += var_set(cname() + "_LDADD", platform_ldadd(platform))
|
||||||
|
r += var_set(cname() + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_IMAGE) " + platform_cflags(platform))
|
||||||
|
r += var_set(cname() + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_IMAGE) " + platform_ldflags(platform))
|
||||||
|
r += var_set(cname() + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) " + platform_cppflags(platform))
|
||||||
|
r += var_set(cname() + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) " + platform_ccasflags(platform))
|
||||||
|
r += var_set(cname() + "_OBJCOPYFLAGS", "$(OBJCOPYFLAGS_IMAGE) " + platform_objcopyflags(platform))
|
||||||
|
# r += var_set(cname() + "_DEPENDENCIES", platform_dependencies(platform) + " " + platform_ldadd(platform))
|
||||||
|
|
||||||
|
r += gvar_add("EXTRA_DIST", extra_dist())
|
||||||
|
r += gvar_add("BUILT_SOURCES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
r += gvar_add("CLEANFILES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
|
||||||
|
r += gvar_add("platform_DATA", "[+ name +].img")
|
||||||
|
r += gvar_add("CLEANFILES", "[+ name +].img")
|
||||||
|
r += rule("[+ name +].img", "[+ name +].image$(EXEEXT)", """
|
||||||
|
if test x$(USE_APPLE_CC_FIXES) = xyes; then \
|
||||||
|
$(MACHO2IMG) $< $@; \
|
||||||
|
else \
|
||||||
|
$(OBJCOPY) $(""" + cname() + """_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .reginfo -R .rel.dyn $< $@; \
|
||||||
|
fi
|
||||||
|
""")
|
||||||
|
return r
|
||||||
|
|
||||||
|
def library(platform):
|
||||||
|
r = set_canonical_name_suffix("")
|
||||||
|
r += gvar_add("noinst_LIBRARIES", "[+ name +]")
|
||||||
|
r += var_set(cname() + "_SOURCES", platform_sources(platform))
|
||||||
|
r += var_set("nodist_" + cname() + "_SOURCES", platform_nodist_sources(platform))
|
||||||
|
r += var_set(cname() + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_LIBRARY) " + platform_cflags(platform))
|
||||||
|
r += var_set(cname() + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) " + platform_cppflags(platform))
|
||||||
|
r += var_set(cname() + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) " + platform_ccasflags(platform))
|
||||||
|
# r += var_set(cname() + "_DEPENDENCIES", platform_dependencies(platform) + " " + platform_ldadd(platform))
|
||||||
|
|
||||||
|
r += gvar_add("EXTRA_DIST", extra_dist())
|
||||||
|
r += gvar_add("BUILT_SOURCES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
r += gvar_add("CLEANFILES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
|
||||||
|
return r
|
||||||
|
|
||||||
|
def installdir(default="bin"):
|
||||||
|
return "[+ IF installdir +][+ installdir +][+ ELSE +]" + default + "[+ ENDIF +]"
|
||||||
|
|
||||||
|
def manpage():
|
||||||
|
r = "if COND_MAN_PAGES\n"
|
||||||
|
r += gvar_add("man_MANS", "[+ name +].[+ mansection +]\n")
|
||||||
|
r += rule("[+ name +].[+ mansection +]", "[+ name +]", """
|
||||||
|
chmod a+x [+ name +]
|
||||||
|
PATH=$(builddir):$$PATH $(HELP2MAN) --section=[+ mansection +] -i $(top_srcdir)/docs/man/[+ name +].h2m -o $@ [+ name +]
|
||||||
|
""")
|
||||||
|
r += gvar_add("CLEANFILES", "[+ name +].[+ mansection +]")
|
||||||
|
r += "endif\n"
|
||||||
|
return r
|
||||||
|
|
||||||
|
def program(platform, test=False):
|
||||||
|
r = set_canonical_name_suffix("")
|
||||||
|
|
||||||
|
r += "[+ IF testcase defined +]"
|
||||||
|
r += gvar_add("check_PROGRAMS", "[+ name +]")
|
||||||
|
r += gvar_add("TESTS", "[+ name +]")
|
||||||
|
r += "[+ ELSE +]"
|
||||||
|
r += gvar_add(installdir() + "_PROGRAMS", "[+ name +]")
|
||||||
|
r += "[+ IF mansection +]" + manpage() + "[+ ENDIF +]"
|
||||||
|
r += "[+ ENDIF +]"
|
||||||
|
|
||||||
|
r += var_set(cname() + "_SOURCES", platform_sources(platform))
|
||||||
|
r += var_set("nodist_" + cname() + "_SOURCES", platform_nodist_sources(platform))
|
||||||
|
r += var_set(cname() + "_LDADD", platform_ldadd(platform))
|
||||||
|
r += var_set(cname() + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_PROGRAM) " + platform_cflags(platform))
|
||||||
|
r += var_set(cname() + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_PROGRAM) " + platform_ldflags(platform))
|
||||||
|
r += var_set(cname() + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) " + platform_cppflags(platform))
|
||||||
|
r += var_set(cname() + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) " + platform_ccasflags(platform))
|
||||||
|
# r += var_set(cname() + "_DEPENDENCIES", platform_dependencies(platform) + " " + platform_ldadd(platform))
|
||||||
|
|
||||||
|
r += gvar_add("EXTRA_DIST", extra_dist())
|
||||||
|
r += gvar_add("BUILT_SOURCES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
r += gvar_add("CLEANFILES", "$(nodist_" + cname() + "_SOURCES)")
|
||||||
|
return r
|
||||||
|
|
||||||
|
def data(platform):
|
||||||
|
r = gvar_add("EXTRA_DIST", platform_sources(platform))
|
||||||
|
r += gvar_add("EXTRA_DIST", extra_dist())
|
||||||
|
r += gvar_add(installdir() + "_DATA", platform_sources(platform))
|
||||||
|
return r
|
||||||
|
|
||||||
|
def script(platform):
|
||||||
|
r = "[+ IF testcase defined +]"
|
||||||
|
r += gvar_add("check_SCRIPTS", "[+ name +]")
|
||||||
|
r += gvar_add ("TESTS", "[+ name +]")
|
||||||
|
r += "[+ ELSE +]"
|
||||||
|
r += gvar_add(installdir() + "_SCRIPTS", "[+ name +]")
|
||||||
|
r += "[+ IF mansection +]" + manpage() + "[+ ENDIF +]"
|
||||||
|
r += "[+ ENDIF +]"
|
||||||
|
|
||||||
|
r += rule("[+ name +]", "$(top_builddir)/config.status " + platform_sources(platform), """
|
||||||
|
$(top_builddir)/config.status --file=-:""" + platform_sources(platform) + """ \
|
||||||
|
| sed -e 's,@pkglib_DATA@,$(pkglib_DATA),g' > $@
|
||||||
|
chmod a+x [+ name +]
|
||||||
|
""")
|
||||||
|
|
||||||
|
r += gvar_add("CLEANFILES", "[+ name +]")
|
||||||
|
r += gvar_add("EXTRA_DIST", platform_sources(platform))
|
||||||
|
return r
|
||||||
|
|
||||||
|
def module_rules():
|
||||||
|
return "[+ FOR module +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, module(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
def kernel_rules():
|
||||||
|
return "[+ FOR kernel +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, kernel(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
def image_rules():
|
||||||
|
return "[+ FOR image +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, image(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
def library_rules():
|
||||||
|
return "[+ FOR library +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, library(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
def program_rules():
|
||||||
|
return "[+ FOR program +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, program(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
def script_rules():
|
||||||
|
return "[+ FOR script +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, script(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
def data_rules():
|
||||||
|
return "[+ FOR data +]" + foreach_enabled_platform(
|
||||||
|
lambda p: under_platform_specific_conditionals(p, data(p))) + "[+ ENDFOR +]"
|
||||||
|
|
||||||
|
print "[+ AutoGen5 template +]\n"
|
||||||
|
a = module_rules()
|
||||||
|
b = kernel_rules()
|
||||||
|
c = image_rules()
|
||||||
|
d = library_rules()
|
||||||
|
e = program_rules()
|
||||||
|
f = script_rules()
|
||||||
|
g = data_rules()
|
||||||
|
z = global_variable_initializers()
|
||||||
|
|
||||||
|
# print z # initializer for all vars
|
||||||
|
print a
|
||||||
|
print b
|
||||||
|
print c
|
||||||
|
print d
|
||||||
|
print e
|
||||||
|
print f
|
||||||
|
print g
|
||||||
@@ -0,0 +1,359 @@
|
|||||||
|
AUTOMAKE_OPTIONS = subdir-objects
|
||||||
|
|
||||||
|
DEPDIR=.deps-core
|
||||||
|
|
||||||
|
include $(top_srcdir)/conf/Makefile.common
|
||||||
|
|
||||||
|
CC=$(TARGET_CC)
|
||||||
|
CPP=$(TARGET_CC)
|
||||||
|
CCAS=$(TARGET_CC)
|
||||||
|
|
||||||
|
if COND_GRUB_MKFONT
|
||||||
|
if COND_HAVE_FONT_SOURCE
|
||||||
|
TARGET_CFLAGS += -DUSE_ASCII_FAILBACK=1 -DHAVE_UNIFONT_WIDTHSPEC=1
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
AM_CFLAGS = $(TARGET_CFLAGS)
|
||||||
|
AM_LDFLAGS = $(TARGET_LDFLAGS)
|
||||||
|
AM_CPPFLAGS = $(TARGET_CPPFLAGS) $(CPPFLAGS_DEFAULT)
|
||||||
|
AM_CCASFLAGS = $(TARGET_CCASFLAGS) $(CCASFLAGS_DEFAULT)
|
||||||
|
|
||||||
|
CFLAGS_PROGRAM += $(CFLAGS_PLATFORM)
|
||||||
|
LDFLAGS_PROGRAM += $(LDFLAGS_PLATFORM)
|
||||||
|
CPPFLAGS_PROGRAM += $(CPPFLAGS_PLATFORM)
|
||||||
|
CCASFLAGS_PROGRAM += $(CCASFLAGS_PLATFORM)
|
||||||
|
|
||||||
|
CFLAGS_LIBRARY += $(CFLAGS_PLATFORM) -fno-builtin
|
||||||
|
CPPFLAGS_LIBRARY += $(CPPFLAGS_PLATFORM)
|
||||||
|
CCASFLAGS_LIBRARY += $(CCASFLAGS_PLATFORM)
|
||||||
|
|
||||||
|
# gentrigtables
|
||||||
|
gentrigtables: gentrigtables.c
|
||||||
|
$(BUILD_CC) -o $@ -I$(top_srcdir)/include $(CPPFLAGS) -lm $<
|
||||||
|
CLEANFILES += gentrigtables
|
||||||
|
|
||||||
|
# trigtables.c
|
||||||
|
trigtables.c: gentrigtables gentrigtables.c $(top_srcdir)/configure.ac
|
||||||
|
$(builddir)/gentrigtables > $@
|
||||||
|
CLEANFILES += trigtables.c
|
||||||
|
|
||||||
|
# XXX Use Automake's LEX & YACC support
|
||||||
|
grub_script.tab.h: script/parser.y
|
||||||
|
$(YACC) -d -p grub_script_yy -b grub_script $<
|
||||||
|
grub_script.tab.c: grub_script.tab.h
|
||||||
|
CLEANFILES += grub_script.tab.c grub_script.tab.h
|
||||||
|
|
||||||
|
# For the lexer.
|
||||||
|
grub_script.yy.h: script/yylex.l
|
||||||
|
$(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $<
|
||||||
|
grub_script.yy.c: grub_script.yy.h
|
||||||
|
CLEANFILES += grub_script.yy.c grub_script.yy.h
|
||||||
|
|
||||||
|
include $(srcdir)/Makefile.core.am
|
||||||
|
include $(srcdir)/Makefile.gcry.am
|
||||||
|
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/cache.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/command.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/device.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/disk.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/dl.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/elf.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/elfload.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/env.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/env_private.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/err.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/file.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/fs.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i18n.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/kernel.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/list.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/misc.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/mm.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/net.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/parser.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/reader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/symbol.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/term.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/time.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/types.h
|
||||||
|
|
||||||
|
if COND_i386_pc
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/biosdisk.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/console.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/vga.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/vbe.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/pxe.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/pit.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_i386_efi
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/time.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/pit.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_i386_coreboot
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/console.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/init.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/loader.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_i386_multiboot
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/console.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/init.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/loader.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_i386_qemu
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/console.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/init.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/pci.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_i386_ieee1275
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/ieee1275/ieee1275.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_x86_64_efi
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/time.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/pit.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_mips_yeeloong
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/cpu/cache.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bitmap.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/gfxterm.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/font.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bitmap_scale.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bufio.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/pci.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/libgcc.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/cs5536.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/pci.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/serial.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_powerpc_ieee1275
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/ieee1275/ieee1275.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/libgcc.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_sparc64_ieee1275
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/boot.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/msdos_partition.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/libgcc.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/ieee1275/ieee1275.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/sparc64/ieee1275/ieee1275.h
|
||||||
|
endif
|
||||||
|
|
||||||
|
if COND_emu
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/cpu/time.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_builddir)/include/grub/cpu/types.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/gzio.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/menu.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/datetime.h
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/misc.h
|
||||||
|
if COND_GRUB_EMU_SDL
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/sdl.h
|
||||||
|
endif
|
||||||
|
if COND_GRUB_EMU_USB
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/libusb.h
|
||||||
|
endif
|
||||||
|
if COND_GRUB_EMU_PCI
|
||||||
|
KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/libpciaccess.h
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
symlist.h: $(top_builddir)/config.h $(KERNEL_HEADER_FILES)
|
||||||
|
@list='$^'; \
|
||||||
|
for p in $$list; do \
|
||||||
|
echo "#include <$$p>" >> $@ || (rm -f $@; exit 1); \
|
||||||
|
done
|
||||||
|
CLEANFILES += symlist.h
|
||||||
|
BUILT_SOURCES += symlist.h
|
||||||
|
|
||||||
|
symlist.c: symlist.h gensymlist.sh
|
||||||
|
$(TARGET_CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS) -DGRUB_SYMBOL_GENERATOR=1 symlist.h > symlist.p || (rm -f symlist.p; exit 1)
|
||||||
|
cat symlist.p | /bin/sh $(srcdir)/gensymlist.sh $(top_builddir)/config.h $(KERNEL_HEADER_FILES) >$@ || (rm -f $@; exit 1)
|
||||||
|
rm -f symlist.p
|
||||||
|
CLEANFILES += symlist.c
|
||||||
|
BUILT_SOURCES += symlist.c
|
||||||
|
|
||||||
|
noinst_DATA += kernel_syms.lst
|
||||||
|
kernel_syms.lst: $(KERNEL_HEADER_FILES) $(top_builddir)/config.h
|
||||||
|
$(TARGET_CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS) $(CFLAGS) -DGRUB_SYMBOL_GENERATOR=1 $^ >kernel_syms.input
|
||||||
|
if grep "^#define HAVE_ASM_USCORE" $(top_builddir)/config.h; then u="_"; else u=""; fi; \
|
||||||
|
cat kernel_syms.input | grep -v '^#' | sed -n \
|
||||||
|
-e '/EXPORT_FUNC *([a-zA-Z0-9_]*)/{s/.*EXPORT_FUNC *(\([a-zA-Z0-9_]*\)).*/'"$$u"'\1 kernel/;p;}' \
|
||||||
|
-e '/EXPORT_VAR *([a-zA-Z0-9_]*)/{s/.*EXPORT_VAR *(\([a-zA-Z0-9_]*\)).*/'"$$u"'\1 kernel/;p;}' \
|
||||||
|
| sort -u >$@
|
||||||
|
rm -f kernel_syms.input
|
||||||
|
CLEANFILES += kernel_syms.lst
|
||||||
|
|
||||||
|
if COND_emu
|
||||||
|
kern/emu/grub_emu-main.$(OBJEXT):grub_emu_init.h
|
||||||
|
grub_emu-grub_emu_init.$(OBJEXT):grub_emu_init.h
|
||||||
|
kern/emu/grub_emu_dyn-main.$(OBJEXT):grub_emu_init.h
|
||||||
|
grub_emu_dyn-grub_emu_init.$(OBJEXT):grub_emu_init.h
|
||||||
|
|
||||||
|
grub_emu_init.h: genemuinitheader.sh $(MOD_FILES)
|
||||||
|
rm -f $@; echo $(MOD_FILES) | sh $(srcdir)/genemuinitheader.sh $(NM) > $@
|
||||||
|
CLEANFILES += grub_emu_init.h
|
||||||
|
|
||||||
|
grub_emu_init.c: grub_emu_init.h genemuinit.sh $(MOD_FILES)
|
||||||
|
rm -f $@; echo $(MOD_FILES) | sh $(srcdir)/genemuinit.sh $(NM) > $@
|
||||||
|
CLEANFILES += grub_emu_init.c
|
||||||
|
endif
|
||||||
|
|
||||||
|
# .lst files
|
||||||
|
platform_DATA += moddep.lst
|
||||||
|
platform_DATA += fs.lst
|
||||||
|
platform_DATA += command.lst
|
||||||
|
platform_DATA += partmap.lst
|
||||||
|
platform_DATA += handler.lst
|
||||||
|
platform_DATA += terminal.lst
|
||||||
|
platform_DATA += parttool.lst
|
||||||
|
platform_DATA += video.lst
|
||||||
|
platform_DATA += crypto.lst
|
||||||
|
CLEANFILES += moddep.lst
|
||||||
|
CLEANFILES += handler.lst
|
||||||
|
CLEANFILES += terminal.lst
|
||||||
|
CLEANFILES += parttool.lst
|
||||||
|
CLEANFILES += video.lst
|
||||||
|
CLEANFILES += crypto.lst
|
||||||
|
|
||||||
|
fs.lst: $(FS_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += fs.lst
|
||||||
|
|
||||||
|
command.lst: $(COMMAND_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += command.lst
|
||||||
|
|
||||||
|
partmap.lst: $(PARTMAP_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += partmap.lst
|
||||||
|
|
||||||
|
handler.lst: $(HANDLER_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += handler.lst
|
||||||
|
|
||||||
|
terminal.lst: $(TERMINAL_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += terminal.lst
|
||||||
|
|
||||||
|
parttool.lst: $(PARTTOOL_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += parttool.lst
|
||||||
|
|
||||||
|
video.lst: $(VIDEO_FILES)
|
||||||
|
cat $^ /dev/null | sort | uniq > $@
|
||||||
|
CLEANFILES += video.lst
|
||||||
|
|
||||||
|
# but, crypto.lst is simply copied
|
||||||
|
crypto.lst: $(srcdir)/lib/libgcrypt-grub/cipher/crypto.lst
|
||||||
|
cp $^ $@
|
||||||
|
CLEANFILES += crypto.lst
|
||||||
|
|
||||||
|
# generate global module dependencies list
|
||||||
|
moddep.lst: kernel_syms.lst genmoddep.awk $(DEF_FILES) $(UND_FILES)
|
||||||
|
cat $(DEF_FILES) kernel_syms.lst /dev/null \
|
||||||
|
| $(AWK) -f $(srcdir)/genmoddep.awk $(UND_FILES) > $@ \
|
||||||
|
|| (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
if COND_i386_pc
|
||||||
|
if COND_ENABLE_EFIEMU
|
||||||
|
efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF)
|
||||||
|
-rm -f $@; \
|
||||||
|
if test "x$(TARGET_APPLE_CC)" = x1; then \
|
||||||
|
$(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -DELF32 -DAPPLE_CC -m32 -Wall -Werror -nostdlib -O2 -c -o $@.bin $< || exit 1; \
|
||||||
|
$(OBJCONV) -felf32 -nu -nd $@.bin $@ || exit 1; \
|
||||||
|
rm -f $@.bin; \
|
||||||
|
else \
|
||||||
|
$(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -DELF32 -m32 -Wall -Werror -nostdlib -O2 -c -o $@ $< || exit 1; \
|
||||||
|
if test ! -z "$(TARGET_OBJ2ELF)"; then $(TARGET_OBJ2ELF) $@ || (rm -f $@; exit 1); fi; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
efiemu64_c.o: efiemu/runtime/efiemu.c
|
||||||
|
if test "x$(TARGET_APPLE_CC)" = x1; then \
|
||||||
|
$(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -DELF64 -DAPPLE_CC=1 -m64 -nostdlib -Wall -Werror -mno-red-zone -c -o $@ $< || exit 1; \
|
||||||
|
else \
|
||||||
|
$(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -DELF64 -m64 -nostdlib -Wall -Werror -O2 -mcmodel=large -mno-red-zone -c -o $@ $< || exit 1; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
efiemu64_s.o: efiemu/runtime/efiemu.S
|
||||||
|
-rm -f $@
|
||||||
|
if test "x$(TARGET_APPLE_CC)" = x1; then \
|
||||||
|
$(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -DELF64 -DAPPLE_CC=1 -m64 -Wall -Werror -nostdlib -O2 -mno-red-zone -c -o $@ $< || exit 1; \
|
||||||
|
else \
|
||||||
|
$(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -DELF64 -m64 -Wall -Werror -nostdlib -O2 -mcmodel=large -mno-red-zone -c -o $@ $< || exit 1; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
efiemu64.o: efiemu64_c.o efiemu64_s.o $(TARGET_OBJ2ELEF)
|
||||||
|
-rm -f $@; \
|
||||||
|
if test "x$(TARGET_APPLE_CC)" = x1; then \
|
||||||
|
rm -f $@.bin; \
|
||||||
|
$(TARGET_CC) -m64 -Wl,-r -nostdlib -o $@.bin $^ || exit 1; \
|
||||||
|
$(OBJCONV) -felf64 -nu -nd $@.bin $@ || exit 1; \
|
||||||
|
rm -f $@.bin; \
|
||||||
|
else \
|
||||||
|
$(TARGET_CC) -m64 -nostdlib -Wl,-r -o $@ $^ || exit 1; \
|
||||||
|
if test ! -z "$(TARGET_OBJ2ELF)"; then $(TARGET_OBJ2ELF) $@ || (rm -f $@; exit 1); fi; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
platform_DATA += efiemu32.o efiemu64.o
|
||||||
|
CLEANFILES += efiemu32.o efiemu64.o efiemu64_c.o efiemu64_s.o
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
File diff suppressed because it is too large.
Load diff
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
#include <grub/pci.h>
|
#include <grub/pci.h>
|
||||||
#include <grub/dl.h>
|
#include <grub/dl.h>
|
||||||
|
#include <grub/emu/misc.h>
|
||||||
#include <grub/util/misc.h>
|
#include <grub/util/misc.h>
|
||||||
|
|
||||||
grub_pci_address_t
|
grub_pci_address_t
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loaded 100 of 540 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user