1

Temat: rsync z iconv

Czy jest możliwość dostania takiej paczuszki dla ar71xx?
Byłbym wdzięczny.

2

Odp: rsync z iconv

Czego mnie ma u mnie jest w testowym rc5: http://downloads.openwrt.org/snapshots/ … /packages/

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez tymmej 2011-04-30 17:20:48)

Odp: rsync z iconv

rsync --iconv=UTF8,UTF8-MAC --progress /test /test2
rsync: --iconv=UTF8,UTF8-MAC: unknown option

rsync 3.0.8-2
libiconv i libiconv-full zainstalowane.

root@OpenWrt:~$ rsync
rsync  version 3.0.8  protocol version 30
Copyright (C) 1996-2011 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
    no socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, no ACLs, no xattrs, !!!!!!!!no iconv!!!!!!!!!!, no symtimes

4

Odp: rsync z iconv

No to nie ma smile A makefile nic o iconv czy utf8 nie mówi.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5 (edytowany przez tymmej 2011-04-30 17:46:38)

Odp: rsync z iconv

Coś to pomoże:

 Added the --iconv option, which allows rsync to convert filenames from
      make this feature available as long as your system has iconv_open().
      If compilation fails, specify --disable-iconv to configure, and then
      default, you can specify --enable-iconv=CONVERT_STRING with the default
      value for the --iconv option that you wish to use.  For example,
      "--enable-iconv=." is a good choice.  See the rsync manpage for an
      explanation of the --iconv option's settings.
      set that is used during an --iconv transfer to/from a daemon module.  You
      can also set your daemon to refuse "no-iconv" if you want to force the
      client to use an --iconv transfer (requiring an rsync 3.x client).

?

6 (edytowany przez tymmej 2011-05-01 19:19:17)

Odp: rsync z iconv

Cezary, mógłbyś skompilować taką paczkę? O ile to, co napisałem coś pomaga.

7

Odp: rsync z iconv

w rc5 ja masz. A inna nie wyjdzie z tego, bo to te same źródła.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

8

Odp: rsync z iconv

Capabilities:
    64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
    no socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, no ACLs, no xattrs, no iconv, symtimes

Jak jest jak nie ma.
Testowałem http://downloads.openwrt.org/snapshots/ … ar71xx.ipk http://downloads.openwrt.org/snapshots/ … ar71xx.ipk  http://downloads.openwrt.org/snapshots/ … ar71xx.ipk
A jakby tak dodać --enable-iconv do MAKEFILE w CONFIGURE_ARGS?

9

Odp: rsync z iconv

Napisałem że jak skompiluję to wyjdzie to samo co w rc5 jest. Makefile nie posiada aktualnie żadnej opcji związanej z iconv.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

10 (edytowany przez tymmej 2011-05-13 18:08:19)

Odp: rsync z iconv

Jest postęp. Prawie 100%.

Capabilities:
    64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
    no socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, no ACLs, no xattrs, iconv, no symtimes

Jak? W Makefile od libiconv:

define Build/InstallDev
        $(INSTALL_DIR) $(1)/usr/include
        $(CP) $(PKG_INSTALL_DIR)/usr/include/iconv.h $(1)/usr/include/

        $(INSTALL_DIR) $(1)/usr/lib
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcharset.{a,so*} $(1)/usr/lib/
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libiconv.{a,so*} $(1)/usr/lib/
        
        $(INSTALL_DIR) $(1)/usr/include
        $(INSTALL_DATA) $(PKG_BUILD_DIR)/include/iconv.h $(1)/usr/include/
endef

Czego do szczęścia potrzebuję? Tego patcha do libiconv. Nawet do tej samej wersji. Dodaje obsługę utf8mac.
https://trac.macports.org/attachment/ti … iconv.diff

Jest jakiś prosty sposób na jego zaaplikowanie? Dodać jakoś do Makefile?

11

Odp: rsync z iconv

Włożyć do katalogu patches.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

12

Odp: rsync z iconv

No i patch szlag trafił.

./utf8mac.h:32:33: error: libkern/OSByteOrder.h: No such file or directory

13

Odp: rsync z iconv

z libkern to jest. NIe ma czegoś takiego w openwrt.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14

Odp: rsync z iconv

Czyli co? Game over?

15

Odp: rsync z iconv

Czyli szukaj innej łatki.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: rsync z iconv

Znalazłem. http://www.opensource.apple.com/source/ … /utf8mac.h
Nic nie include'uje. Tak jak oryginalne pliki (utf8.h, itd.).

17

Odp: rsync z iconv

Zrobiłem patcha, libiconv jednak się kompiluje bez wsparcia dla utf8mac.
Mógłbyś zainstalować libiconv, libcharset i sprawdzić binarkę iconv (iconv --list), która wyjdzie po kompilacji? Niestety trzeba ją ręcznie przekopiować, bo nie jest w paczce. Może zauważysz coś ciekawego.

http://www.tymmej.pl/300-add_utf8mac.patch

18

Odp: rsync z iconv

Musisz poprawić też pierwszy patch, 100-strip-charsets.patch, bo po prostu nie jest włączony utf8-mac.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19

Odp: rsync z iconv

Chyba działa. Zaktualizowałem patcha.
Jedyny problem, że libiconv-full muszę kompilować z oryginalnym Makefile, aby paczka zawierała libiconv.{a,so*}.
Jednak oryginalny Makefile nie kopiuje iconv.h tam, gdzie trzeba i rsync nie kompiluje się z opcją iconv. Przez to muszę zedytować Makefile na moją wersję.

20

Odp: rsync z iconv

No to dodaj żeby Ci kompilował iconv.h tam gdzie chcesz, w czym problem?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

21

Odp: rsync z iconv

W tym, że nie wiem gdzie chcę to mieć. Nie rozumiem tej składni. Grunt, że działa.

22

Odp: rsync z iconv

Hmm, tam po prosty kopiowanie plików jest...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

23

Odp: rsync z iconv

Nie wiem czym są zmienne $1, $PKG_{INSTALL,BUILD}_DIR, czym się różni INSTALL_DATA od CP, a w końcu gdzie rsync szuka iconv.h.

Oryginał:

$(INSTALL_DIR) $(1)/usr/lib/libiconv-full/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/iconv.h $(1)/usr/lib/libiconv-full/include/
$(INSTALL_DIR) $(1)/usr/lib/libiconv-full/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libcharset.{a,so*} $(1)/usr/lib/libiconv-full/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libiconv.{a,so*} $(1)/usr/lib/libiconv-full/lib/

W inne miejsce trzeba wrzucić iconv.h Ale czy zmienić drugą linijkę, czy dodać

$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DATA) $(PKG_BUILD_DIR)/include/iconv.h $(1)/usr/include/

to nie mam pojęcia.

24

Odp: rsync z iconv

$1 to samo co $PKG_INSTALL_DIR, katalog gdzie pliki z paczki będą instalowane. Zwykle jest to PKG_BUILD_DIR/ipkg-install, a sam PKG_BUILD_DIR to katalog w których jest dany pakiet rozpakowany i kompilowoany. INSTALL_DATA od CP w sumie niczym po prostu są dodane pewne domyślne opcje.

NB zwykłe echo $PKG_INSTALL_DIR byś zrobił i wiedział byś czym te zmienne są.

Gdzie szuka - pewnie w usr/include, jak każdy normalny pakiet.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

25

Odp: rsync z iconv

Odkopałem, gdyż potrzebuję właśnie takiego rsynca z iconv (aczkolwiek mi zależy na kodowaniu utf8 i 1250 z windowsa) hmm
Kompilowanie to dla mnie czarna magia w zw. z tym mam pytanie, czy to się da osiągnąć czy nie? Jeśli się da to będę walczył żeby pojąć te kompilacje i osiągnąć tego rsynca. Jeśli nie to chociaż będę wiedział, że ja nie robię błędów.
A może ktoś ma takie coś już skompilowane?