On Tue, Apr 27, 2021 at 09:25:05PM +0900, haha wang wrote:
> <div><div>Hi, everybody.</div><div>        I am a newbie to debian-hurd 
> development and want to contribute to this project. After reading the 
> development guide at <a 
> href="https://www.debian.org/ports/hurd/hurd-devel-debian"; rel="noopener 
> noreferrer" 
> target="_blank">https://www.debian.org/ports/hurd/hurd-devel-debian</a>, I 
> decide to fix a broken package found at the recommended page <a 
> href="https://people.debian.org/~sthibault/out_of_date2.txt"; rel="noopener 
> noreferrer" 
> target="_blank">https://people.debian.org/~sthibault/out_of_date2.txt</a> 
> named `libtorrent`.</div><div> </div><div>      After I download the package 
> source and try to build without any modifications under the debian hurd 
> running in qemu (<strong>debian-hurd-20210219.img</strong>),  I got the 
> following error.</div><div> </div><div>      ```<div>   socket_fd.cc: In 
> member function 'bool 
> torrent::SocketFd::set_priority(torrent::SocketFd::priority_type)':</div><div>
>    socket_fd.cc:78:43: error: 'IPV6_TCLASS' was not declared in this scope; 
> did you mean 'IPOPT_CLASS'?</div></div><div>    ```</div><div> </div><div>   
> and it matches with what that page said.</div><div> </div><div>  I also try 
> to build that package under my debian desktop(Debian GNU/Linux bullseye/sid 
> x86_64) and it got no errors. After a quick search, i have found linux 
> defined the `IPV6_TCLASS` macro at `bits/in.h` as follows:</div><div> 
> </div><div>  ```</div><div>  #define IPV6_TCLASS 67</div><div>  
> ```</div><div> </div><div>So that, I modify the `configure.ac` to add a 
> conditional compilation when it detects the host operating system is hurd 
> based, along with macro definition at the `Makefile.am` found at `src/net/`. 
> The patch file is attached at the end of this email.</div><div> 
> </div><div>But I have some questions:</div><div> </div><div>1. Should I only 
> load that patch file? Is it enough? Should I provided a change 
> file?</div><div>2. If the patch file is accepted, how it can be merged to the 
> official deb package?</div><div>3. Should I add some other description 
> information to the patch file?</div><div>4. Can somebody tell me how can I 
> become a debian package maintainer? Is there any detailed and practical 
> guides?</div><div> </div><div>Thank you!</div><div> 
> </div><div>---</div><div>hahawang</div><div> </div><div><div>--- 
> a/configure.ac</div><div>+++ b/configure.ac</div><div>@@ -1,5 +1,17 
> @@</div><div>AC_INIT(libtorrent, 0.13.8, 
> sundell.softw...@gmail.com)</div><div> 
> </div><div>+AC_CANONICAL_HOST</div><div>+</div><div>+build_hurd=no</div><div>+</div><div>+case
>  "${host_os}" in</div><div>+ gnu*)</div><div>+ build_hurd=yes</div><div>+ 
> ;;</div><div>+esac</div><div>+</div><div>+AM_CONDITIONAL([BUILD_HURD], [test 
> "$build_hurd" = 
> "yes"])</div><div>+</div><div>LT_INIT([disable-static])</div><div> 
> </div><div>dnl Find a better way to do this</div><div>--- 
> a/src/net/Makefile.am</div><div>+++ b/src/net/Makefile.am</div><div>@@ -26,3 
> +26,7 @@</div><div>throttle_node.h</div><div> </div><div>AM_CPPFLAGS = 
> -I$(srcdir) -I$(srcdir)/.. -I$(top_srcdir)</div><div>+</div><div>+if 
> BUILD_HURD</div><div>+AM_CPPFLAGS += 
> -DBUILD_HURD</div><div>+endif</div><div>--- 
> a/src/net/socket_fd.cc</div><div>+++ b/src/net/socket_fd.cc</div><div>@@ 
> -50,6 +50,10 @@</div><div>#include "torrent/exceptions.h"</div><div>#include 
> "socket_fd.h"</div><div> </div><div>+#ifdef BUILD_HURD</div><div>+#define 
> IPV6_TCLASS 67</div><div>+#endif</div><div>+</div><div>namespace torrent 
> {<!-- --></div><div> </div><div>inline void</div></div></div>

Hello,

Please avoid HTML emails (this applies to most open source development
mailing lists).

I suggest you also send to bug-h...@gnu.org, which is the main mailing
list concerning Hurd development.

-- 
Richard Braun

Reply via email to