שיחה:בניית מוזילה ב-Windows

מתוך וויקי
קפיצה אל: ניווט, חיפוש
הכנת Shell parameters
----
cvs login (או cvs -z3 login לדחיסת ב-TCP...לבדוק אם כל ה-session דחוס)
CVS password: anonymous

cvs checkout mozilla/client.mk
-או-
cvs co -r MOZILLA_1_7_BRANCH mozilla/client.mk (כדי לפנות ל-branch מסויים, במקרה הזה תגית ה-CVS מפנה ל-‏1.7)

cd mozilla
----
בדיקת Tinderbox
http://tinderbox.mozilla.org/showbuilds.cgi?tree=SeaMonkey
http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox
http://tinderbox.mozilla.org/showbuilds.cgi?tree=Aviary-1.0
----
תגיות CVS
http://www.mozilla.org/releases/cvstags.html
AVIARY_1_0_20040515_BRANCH
MOZILLA_1_7_BRANCH
----
אפשרויות release ל- .mozconfig (בתיקיית mozilla) 

ac_add_options --with-extensions=all
ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --enable-crypto

יש להריץ ‎./configure לאחר שינויים
----
עדכון עץ קיים מ-CVS, ללא בניה
make -f client.mk checkout

בניית מחדש, ללא עדכון
make -f client.mk build_all_depend

הורדת הקוד (מה קורה אם כבר יש עץ קיים?)
make -f client.mk pull_all

בניה של הקוד הקיים (מה ההבדל מול build_all_depend?)
make -f client.mk build_all

הורדת הקוד + בניה (מה ההבדל מול make -f client.mk ללא תוספות?)
make -f client.mk pull_and_build_all - דורש בדיקה (רק מושך, לא בונה משום מה)

מחיקה של כל הקבצים שנוצרו מהבניה הקודמת
make -f client.mk clobber_all

make -f client.mk pull_and_build_all_dep
make -f client.mk clean
make -f client.mk distclean
make clean
make -f client.mk clean checkout build (הורדה, מחיקת יעד ובניה - תוך שימור פאטצ'ים)
להוסיף על שימוש ב- cvs -z3 להאצת ההורדה

http://twpol.dyndns.org/temp/status.cmd - a tier/file script for building mozilla
	pass it a log file from a build, and it'll tell you how far it is


----
חיפוש בקוד
http://lxr.mozilla.org
----
חיפוש checkins לקוד
http://bonsai.mozilla.org/cvsqueryform.cgi
----
בניה מחדש של הקוד שעבר שינוי: make בתיקיה העכשווית

לאחר שינויים בממשק, בניה ב-‎\mozilla\xpfe\bootstrap
----
יצירת patch לקבצים מסויימים
cvs diff -u [list of changed files] > mypatch.diff

יצירת patch לכל הקבצים בתיקיה שהשתנו
cvs diff -u > mypatch.diff

הפעלת patch
patch < bugpatch.diff (בתיקיה המתאימה; מה ההבדל מול patch -p0 < mypatch.diffs או patch -p1 < mypatch.diffs?)
----
Unix Build Configurator
http://webtools.mozilla.org/build/config.cgi

Debugging
http://www.mozilla.org/unix/debugging-faq.html
http://mozilla.org/build/win32-debugging-faq.html

Building A Mozilla Distribution
http://www.mozilla.org/build/distribution.html

Jar Packaging
http://www.mozilla.org/build/jar-packaging.html

Firefox Aviary
ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-0.9/

Firefox Trunk
ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/

האצת הבניה עם ccache (לבדוק)
http://weblogs.mozillazine.org/darin/archives/005483.html
http://weblogs.mozillazine.org/darin/archives/005504.html

Mozilla tree structure
http://stud4.tuwien.ac.at/~e0225227/tree_structure.txt
----

מנו, אתה לא חושב שעדיף להמליץ על wget במקום curl? היא הרבה יותר נוחה אם לא רוצים להסתבך עם הפרמטרים. ‫תומר

להסתבך עם הפרמטרים? אני ממליץ על שתיהן, לא שמתי את wget? (מכה את עצמי ברגעים אלה :) ), להודה של קובץ אחד curl יותר נוחה. (כל מה שצריך הוא -o ובשביל תצוגה נוחה יותר -l)

בכל אופן, אני רחוק מלסיים את הדף הזה...

Mano ‫16:12, 18 יוני 2004 (IDT)

לא הוספת את wget. ל-curl אין יותר מידי יתרונות על wget. שתיהן עושות פחות-או-יותר את אותה העבודה, רק ש-wget מגיעה עם בריירות מחדל נוחות יותר. ול-curl אין בכלל מצב רקורסיבי...
אני אוסיף בפעם הבאה שאערוך את הדף... (אגב, לא "הגנתי" עליו, אתה מוזמן לעשות זאת במקומי).
טופל ‫Mano