subversion für freetz

astrapi

Mitglied
Mitglied seit
27 Mai 2005
Beiträge
341
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich bin mal wieder beim Versuch subversion für freetz zu bauen. dazu brauch ich 2 Downloads (subversion-1.6.5.tar.gz und subversion-deps-1.6.5.tar.gz).

Wie trag ich das in meine subversion.mk ein? Oder muss ich für die deps ein eigenes Paket bauen?

Edit: Titel angepasst
 
Zuletzt bearbeitet:
Ja, denke schon....
 
Da gibts doch was namens configure_pre_cmd oder so ähnlich, darüber hatte ich das damals versucht. Runterladen und entpacken hat damit auch gut funktioniert, nur beim Bauen hings dann irgendwo. Hab aber nie rausgefunden woran das lag.
 
@HAL 9000:

hast du evtl. noch die Dateien von damals?
 
ich bin mal wieder beim Versuch subversion für freetz zu bauen
damit wir parallel nicht das gleiche machen, wollte nur sagen, dass ich auch dadran arbeite...

brauch ich 2 Downloads (subversion-1.6.5.tar.gz und subversion-deps-1.6.5.tar.gz).
Ich denke, es ist besser und auch einfacher, für jede Library, von der subversion abhängt, ein eigenes Paket zu machen. Zum einen werden andere Pakete, die eventuell die gleichen Libraries benötigen, davon profitieren, zum anderen sind drei der Libraries aus subversion-deps (zlib, neon und sqlite) in freetz bereits enthalten.

Ich habe es schon geschafft apt & apt-util zu _übersetzen_. Testen, ob die Libraries auch tatsächlich das tun, was sie sollen, konnte ich noch nicht. Ich hänge mal den Patch Anhang anzeigen apr_apt-util.patch.txt an, wenn Du Interesse hast, kannst Du gerne Deine Arbeit darauf aufbauen.

Es könnte sein, dass Du auch noch diesen Patch Anhang anzeigen expat.mk.fix.patch.txt brauchst. Dieser löst/workaroundet ein Problem mit fehlerhaften c++-related Einträgen in make/config.cache im Falle, dass Du ein clean build machst.
 
wie weit bist du denn bzw. wie sieht dein zeitplan aus?
 
wie weit bist du denn bzw. wie sieht dein zeitplan aus?
Mit dem apr/apr-util-Patch von oben sind alle zwingend erforderlichen Libraries vorhanden, sodass man sich ans Übersetzen von subversion ran machen kann. Ich habe schon eine Vorlage, sodass configure von subversion durchläuft. Dabei werden allerdings einige Dinge noch misdetected, i.e. es wird versucht libraries/packages vom host zu verwenden. Leider habe ich es noch nicht geschafft, die richtigen configure Options rauszufinden bzw. die notwendigen Patches zu erstellen, um es dem configure abzugewöhnen.

Einen Zeitplan habe ich nicht, it's done, when it's done. Arbeiten tue ich meistens abends und am WE dran, an diesem WE allerdings nicht, da ich morgen weg bin. Ich kann auch die noch nicht funktionierende Vorlage posten, vielleicht schafft es einer eher sie fertig zu machen als ich wieder Zeit habe.
 
tu das mal...

im patch war übrigens ein fehler, apt-utils gibts bei apache nicht im unterordner apt-util sondern im unterordner apt. wenn mans entsprechend anpasst, klappt der douwnload und auch das bauen des image
 
hast du evtl. noch die Dateien von damals?
Leider nicht mehr, sonst hätte ich sie schon gepostet. Ich denke, ich war in etwa genauso weit wie er13 im Moment, configure lief durch, compilieren auch, und beim linken hats dann geknallt. Woran das lag hab ich nie rausgefunden (bzw. hab irgendwann aufgehört zu suchen).
Den Ansatz mit eigenen Paketen für alle libraries habe ich auch mal kurz versucht, passiert ist aber das gleiche.
Eventuell findest du im alten Subversion auf Fritzbox-Thread noch was, da hatte ich vielleicht auch noch was dazu geschrieben.
 
Schaut doch mal das openwrt makefile dazu an. Die dort genutzten configure-Optionen (und ggf. Patches) sind eigentlich immer eine gute Ausgangsbasis ;-)


Jörg
 
wenn ich ein angepasstes empty.mk verwende, erhalte ich nur die meldung

Code:
cp source/subversion-1.6.5/subversion packages/subversion-1.6.5/root/usr/bin/subversion
cp: Verzeichnis „source/subversion-1.6.5/subversion“ ausgelassen
make: *** [packages/subversion-1.6.5/root/usr/bin/subversion] Fehle
Code:
$(call PKG_INIT_BIN, 1.6.5)
$(PKG)_SOURCE:=subversion-$($(PKG)_VERSION).tar.bz2
$(PKG)_SITE:=http://subversion.tigris.org/downloads
$(PKG)_BINARY:=$($(PKG)_DIR)/subversion
$(PKG)_TARGET_BINARY:=$($(PKG)_DEST_DIR)/usr/bin/subversion

$(PKG)_CONFIGURE_PRE_CMDS += ./autogen.sh ;
$(PKG)_CONFIGURE_OPTIONS += --without-apxs
$(PKG)_CONFIGURE_OPTIONS += --without-neon
$(PKG)_CONFIGURE_OPTIONS += --without-serf 
$(PKG)_CONFIGURE_OPTIONS += --without-ssl 
$(PKG)_CONFIGURE_OPTIONS += --without-jikes 
$(PKG)_CONFIGURE_OPTIONS += --without-junit

$(PKG_SOURCE_DOWNLOAD)
$(PKG_UNPACKED)
$(PKG_CONFIGURED_CONFIGURE)

$($(PKG)_BINARY): $($(PKG)_DIR)/.configured
    PATH="$(TARGET_PATH)" \
        $(MAKE) -C $(SUBVERSION_DIR) \
                DESTDIR=$(PKG)_TARGET_BINAR \
        CC="$(TARGET_CC)" \
        CFLAGS="$(TARGET_CFLAGS)"

$($(PKG)_TARGET_BINARY): $($(PKG)_BINARY)
    $(INSTALL_BINARY_STRIP)

$(pkg):

$(pkg)-precompiled: $($(PKG)_TARGET_BINARY)

$(pkg)-clean:
    -$(MAKE) -C $(SUBVERSION_DIR) clean
    $(RM) $(SUBVERSION_DIR)/.configured

$(pkg)-uninstall:
    $(RM) $(SUBVERSION_TARGET_BINARY)

$(PKG_FINISH)
 
Schaut doch mal das openwrt makefile dazu an. Die dort genutzten configure-Optionen (und ggf. Patches) sind eigentlich immer eine gute Ausgangsbasis ;-)
Wieso ist es denn bei denen unter net? Hab' gesucht, bloß nicht unter net erwartet, daher nicht gefunden... Selber schuld, hätte mir das Rad Neuerfinden sparen können :)

So zum Thema, bin heute Abend etwas weiter gekommen. Die richtigen configure Optionen scheinen gefunden zu sein - configure läuft durch, Übersetzen und Linken klappt auch. Testen konnte ich noch nicht, da das Image bei mir 400kb zu groß wird (für external keine Zeit mehr und mit LD_LIBRARY_PATH ist mir der manuelle Aufwand zu groß). Wer also das Testen übernehmen möchte nur zu. In subversion.mk sind weitere TODOs aufgelistet, wer davon was übernehmen möchte auch nur zu. Ich bin, wie oben schon erwähnt, für die nächsten drei Tage weg, werde also nichts dadran machen (i.e. wenn jemand tatsächlich was machen würde, werden wir nichts mergen müssen).

Anhang anzeigen subversion-20091008-2.patch.txt (hoffentlich habe ich nichts vergessen)
 
Zuletzt bearbeitet:
super, werd mir das morgen mal anschauen ... danke schonmal
 
mit den beiden patches von er13 läuft das erstellen schonmal durch, ob die bins laufen muss ich noch testen ...
 
Habs mir auch mal angesehen. Laufen lassen kann ichs im Moment nicht weil meine Box im Moment nicht läuft (ich ziehe demnächst um), aber bauen tuts im großen und ganzen schonmal. Wahnsinn wie schnell du das hinbekommen hast, wenn ich mir angucke wie lange ich da dran gebastelt hab...
Zwei Dinge sind mir aufgefallen:
Zuerst kam beim download von apr und apr-util ein 404 vom Server zurück. Nachdem ich $(PKG)_SITE auf http://www.osnt.org/apache/apr/ geändert hatte gings dann aber. Achtung, am Ende muss es auf jeden Fall apr heißen, nicht apr-util.
Das zweite war eine Warnung ganz am Ende:
Code:
libneon_WITH_SSL                                                          
WARNING: Library libneon_WITH_SSL selected, but no files found
Scheinbar ist make hier der Meinung, dass libneon_WITH_SSL eine eigene Bibliothek ist. Ob das in der Praxis Probleme macht kann ich aber nicht sagen.
Für die TODO-Liste hätte ich noch, dass man vielleicht für die einzelnen Binaries im menuconfig auswählen können sollte, ob sie ins Image sollen oder nicht. Bauen könnte man das wie z.B. bei e2fsprogs, kann ich in den nächsten Tagen mal machen.
 
bei mir lief es ohne ssl perfekt durch, apr-util hatte ich schon erwähnt. ein erster test auf einer 7113 hat keine fehler ergeben.

Edit: Ich würde mich dann mal ums WebIF kümmern ...
 
Dachte ich mir :)
Der Patch fürs einzeln auswählen ist fertig. Auf der Box hab ichs nicht probiert, aber unter Packages landen nur die binaries die im menuconfig ausgewählt wurden.

Edit: Bei mir hat alles sauber gebaut, als ich in einem frisch ausgecheckten freetz-ordner getestet habe. Eben habe ich das gleiche mal in meinem normalen Ordner probiert, aber da kam ein Fehler:
Code:
cd subversion/tests/libsvn_delta && /bin/sh /home/jens/freetz-trunk/source/subversion-1.6.5/libtool --tag=CC --silent --mode=link /home/jens/freetz-trunk/toolchain/target/bin/mipsel-linux-uclibc-gcc  -Os -pipe -march=4kc -Wa,--trap -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64     -L/home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib -L/home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib  -rpath /usr/lib -o vdelta-test  vdelta-test.o ../../../subversion/libsvn_delta/libsvn_delta-1.la ../../../subversion/libsvn_subr/libsvn_subr-1.la /home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib/libaprutil-1.la     -lexpat   -L/home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib  -lsqlite3         /home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib/libapr-1.la -luuid -lm -lcrypt  -lpthread
libtool: link: warning: library `/home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib/libneon.la' was moved.
/home/jens/freetz-trunk/toolchain/build/gcc-4.2.4-uClibc-0.9.28/mipsel-linux-uclibc/usr/lib/libapr-1.so: undefined reference to `__gnu_local_gp'
collect2: ld returned 1 exit status
make[1]: *** [subversion/tests/libsvn_delta/svndiff-test] Fehler 1

.config habe ich angehängt.
 

Anhänge

  • svn_individual_selection.patch.gz
    699 Bytes · Aufrufe: 5
  • config.txt
    18.7 KB · Aufrufe: 7
Zuletzt bearbeitet:
hier nun der WebIF Patch. Vorerst ist nur der Pfad zu den Repositorys einstellbar. Was wäre noch nötig?

PS: der Patch ist ohne die Einzelauswahl!
 

Anhänge

  • subversion_20091011.patch.tar
    30 KB · Aufrufe: 9
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.