Оптимизация make.conf
Так как мы сидим под фряхой и ставим
все исключительно из портов компилим ядра обновляем World и тд то
неплохо было бы оптимизировать процесс компиляции. Многие часто не
придают этому значение, но ведь при этом это ускорило бы процесс
компилирования исходников а, следовательно, сэкономило наше время :) да и
потом мы оптимизируем под наше железо.
1) Итакс начнемс..
Я привожу тут под свой комп так что читаем коммменты.
# Тип проца у меня p3 (ниже у меня он также фигурирует как pentium3) # Intel x86 architecture: # (AMD CPUs) opteron athlon64 athlon-mp athlon-xp athlon-4 # athlon-tbird athlon k8 k6-3 k6-2 k6 k5 # (Intel CPUs) nocona pentium4[m] prescott pentium3[m] pentium-m # pentium2 pentiumpro pentium-mmx pentium i486 i386 # (Via CPUs) c3 c3-2 # Alpha/AXP architecture: ev67 ev6 pca56 ev56 ev5 ev45 ev4 # AMD64 architecture: opteron, athlon64, nocona # Intel ia64 architecture: itanium2, itanium
CPUTYPE?=pentium3
# Здесь указываем дополнительные флаги CFLAGS=-O1 -pipe NO_PROFILE=true # Обход построения библиотек для профилирования
# Говорим что флаги включать обязательно NO_CPU_CFLAGS=false NO_CPU_COPTFLAGS=false
# Это совместимость с BSD 4.x COMPAT4X=true
# Отрубаем сборку ненужных библиотек и софта # посмотреть что еще можно накрутить тут # /usr/share/examples/etc/make.conf или чуть ниже я опишу. MAKE_KERBEROS4=false MAKE_KERBEROS5=false NO_BIND=true NO_SENDMAIL=true NO_GAMES=true
# Настройки Perl PERL_VER=5.8.8 PERL_VERSION=5.8.8 PERL_ARCH=mach NOPERL=no WITH_PERL=yes WITHOUT_PERL=no
# Теперь FORCE портов.. [code]FORCE_PKG_REGISTER=yes
| Ну вот и все теперь сохраняем и пользуемся.
Но если у вас возникли какие либо проблемы с портами типа одинаковых установленных
(различия только в версиях будут) портов как:
/var/db/pkg:
postfix-2.3.1_1
postfix-2.3.2_4
То вырубаем его.
Как обещал некоторые настройки я немного опишу.
Но еще раз оговорюсь за полным собранием в библиотеку ;)
/usr/share/examples/etc/make.conf
|
#NO_ACPI= # не собирать acpiconf(8) и соответствующие программы #NO_ATM= # не собирать ATM соответствующие программы и библиотеки #NO_AUTHPF= # не собирать и неустанавливать authpf (setuid/gid) #NO_BLUETOOTH= # не собирать Bluetooth и все связанное с ним #NO_BOOT= # не собирать boot blocks и loader #NO_CRYPT= # не собирать для crypto code #NO_CVS= # не собирать CVS #NO_CXX= # не собирать C++ и его друзей :) #NO_DICT= # не собирать для Webster словари #NO_DYNAMICROOT= # нелинковать /bin и /sbin динамически #NO_FORTRAN= # не собирать g77 и соответствующие библиотеки #NO_GAMES= # не собирать игрушки (games/ subdir) #NO_GDB= # не собирать GDB #NO_GPIB= # не собирать GPIB support #NO_I4B= # не собирать пакет isdn4bsd #NO_INET6= # не собирать IPv6 соответствующие программы и библиотеки #NO_INFO= # не собирать и неустанавливать информационные файлы #NO_IPFILTER= # не собирать IP Filter package #NO_KERBEROS= # не собирать и неустанавливать Kerberos 5 (KTH Heimdal) #NO_LIBC_R= # не собирать libc_r (re-entrant version of libc) #NO_LIBPTHREAD= # не собирать libpthread (M:N threading library) #NO_LIBTHR= # не собирать libthr (1:1 threading library) #NO_LPR= # не собирать lpr и соответствующие программы #NO_MAILWRAPPER= # не собирать для mailwrapper(8) MTA сектора #NO_MAN= # не собирать man хелпы #NO_MODULES= # не собирать модули устанавливаемые в kernel #NO_NETCAT= # не собирать netcat #NO_NLS_CATALOGS= # не собирать NLS каталоги устанавливаемые для csh(1) #NO_OBJC= # не собирать Objective C support #NO_OPENSSH= # не собирать OpenSSH #NO_OPENSSL= # не собирать OpenSSL (implies NO_KERBEROS/NO_OPENSSH) #NO_PF= # не собирать PF firewall пакеты #NO_PROFILE= # Не компилировать библиотеки для профайлера #NO_RCMDS= # не собирать и неустанавливать BSD r* команды (rsh, etc). #NO_SENDMAIL= # не собирать sendmail и соответствующие программы #NO_SHARE= # do not go into the share subdir #NO_SHARED= # собирать в /bin и /sbin статические линки (хреновая мысль) #NO_SHAREDOCS= # не собирать для 4.4BSD официальные документы #NO_TCSH= # не собирать и не устанавливать /bin/csh (which is tcsh) #NO_TOOLCHAIN= # не собирать программы для программ разработчиков #NO_USB= # не собирать usbd(8) и соответствующие программы #MAKE_SHELL?=sh # тут ясно кому надо включат
#NO_BIND= # не собирать BIND #NO_BIND_ETC= # не копировать установленные файлы в /etc/namedb #NO_BIND_LIBS_LWRES= # тоже но по библиотекам #NO_BIND_MTREE= # не запускать mtree чтобы создать chroot дириктории #NO_BIND_NAMED= # не собирать named, rndc, lwresd, etc. #NO_BIND_UTILS= # не собирать dig, host, nslookup, nsupdate #WITH_BIND_LIBS= # ставить для BIND библиотеки и файлы
# OpenSSL поддерживает алгоритм IDEA, по умолчанию он # отключен из-за патентных ограничений Соединенных Штатов. # Для его использования необходимо ознакомиться с лицензией, # и, если ограничения приемлемы то врубаем ;) #MAKE_IDEA= # IDEA (128 bit symmetric encryption)
# Документация токо для ENG и RUS #DOC_LANG= en_US.ISO8859-1 ru_RU.KOI8-R
| В конфиге make.conf можно настроить чтобы по команде "make update" в /usr/src
обновлялись порты ;) в конфиг нужно внести нижеследующее
SUP_UPDATE= SUP= /usr/bin/csup SUPFLAGS= -g -L 2 -z SUPHOST= cvsup.FreeBSD.org SUPFILE= /usr/share/examples/cvsup/standard-supfile PORTSSUPFILE= /usr/share/examples/cvsup/ports-supfile DOCSUPFILE= /usr/share/examples/cvsup/doc-supfile
| Опция
- позволяющая указать на свой конфиг кернела и будет собирать при
${MAKE} buildkernel и устанавливатся ${MAKE} installkernel
Дополнительно по csup можно посмотреть
http://www.freebsd.org/doc/handbook/cvsup.html
/usr/share/examples/cvsup/README
По опциям make
http://www.freebsd.org/cgi/man.cgi?query=make.conf&sektion=5
/usr/share/examples/etc/make.conf
Продолжение следует... :)
Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?t=2979.
размещено: 2007-03-11,
последнее обновление: 2007-04-14,
автор: Raven2000
|