* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option @ 2018-11-15 16:43 DUPONCHEEL Sébastien 2018-11-15 18:24 ` Baruch Siach 0 siblings, 1 reply; 10+ messages in thread From: DUPONCHEEL Sébastien @ 2018-11-15 16:43 UTC (permalink / raw) To: buildroot Signed-off-by: DUPONCHEEL S?bastien <sebastien.duponcheel@corp.ovh.com> --- package/shadowsocks-libev/Config.in | 7 +++++++ package/shadowsocks-libev/shadowsocks-libev.mk | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in index f58abdb..acd9a67 100644 --- a/package/shadowsocks-libev/Config.in +++ b/package/shadowsocks-libev/Config.in @@ -15,6 +15,13 @@ config BR2_PACKAGE_SHADOWSOCKS_LIBEV https://github.com/shadowsocks/shadowsocks-libev +config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS + bool "enable connmarktos feature" + depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK + help + Build with the connmark to TOS feature + comment "shadowsocks-libev needs a toolchain w/ threads" depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_TOOLCHAIN_HAS_SYNC_8 || !BR2_ARCH_IS_64 diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk index 7fdcd3f..34d95ca 100644 --- a/package/shadowsocks-libev/shadowsocks-libev.mk +++ b/package/shadowsocks-libev/shadowsocks-libev.mk @@ -21,4 +21,8 @@ ifeq ($(BR2_riscv),y) SHADOWSOCKS_LIBEV_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_REENTRANT" endif +ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) +SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos +endif + $(eval $(autotools-package)) -- 2.7.4 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-15 16:43 [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option DUPONCHEEL Sébastien @ 2018-11-15 18:24 ` Baruch Siach [not found] ` <25f6955b-c3f1-28a1-2a51-6ad90f391c9c@corp.ovh.com> 0 siblings, 1 reply; 10+ messages in thread From: Baruch Siach @ 2018-11-15 18:24 UTC (permalink / raw) To: buildroot Hi S?bastien, Thanks for your contribution. A few comments below. DUPONCHEEL S?bastien writes: > Signed-off-by: DUPONCHEEL S?bastien <sebastien.duponcheel@corp.ovh.com> > --- > package/shadowsocks-libev/Config.in | 7 +++++++ > package/shadowsocks-libev/shadowsocks-libev.mk | 4 ++++ > 2 files changed, 11 insertions(+) > > diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in > index f58abdb..acd9a67 100644 > --- a/package/shadowsocks-libev/Config.in > +++ b/package/shadowsocks-libev/Config.in > @@ -15,6 +15,13 @@ config BR2_PACKAGE_SHADOWSOCKS_LIBEV > > https://github.com/shadowsocks/shadowsocks-libev > > +config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS > + bool "enable connmarktos feature" > + depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV > + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK > + help > + Build with the connmark to TOS feature If the size increase of enabling this feature is not huge we usually just enable it unconditionally when the required dependencies are enabled. This reduced the number of config options that the user has to go through. > comment "shadowsocks-libev needs a toolchain w/ threads" > depends on BR2_TOOLCHAIN_HAS_SYNC_4 > depends on BR2_TOOLCHAIN_HAS_SYNC_8 || !BR2_ARCH_IS_64 > diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk > index 7fdcd3f..34d95ca 100644 > --- a/package/shadowsocks-libev/shadowsocks-libev.mk > +++ b/package/shadowsocks-libev/shadowsocks-libev.mk > @@ -21,4 +21,8 @@ ifeq ($(BR2_riscv),y) > SHADOWSOCKS_LIBEV_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_REENTRANT" > endif > > +ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) So instead of that do ifeq ($(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),y) > +SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos If libnetfilter_conntrack is a build time dependency you also need to add it to SHADOWSOCKS_LIBEV_DEPENDENCIES here to make sure it build before shadowsocks-libev. > +endif You should also add --disable-connmarktos (or the equivalent option) in the 'else' part of this condition. > $(eval $(autotools-package)) baruch -- http://baruch.siach.name/blog/ ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il - ^ permalink raw reply [flat|nested] 10+ messages in thread
[parent not found: <25f6955b-c3f1-28a1-2a51-6ad90f391c9c@corp.ovh.com>]
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option [not found] ` <25f6955b-c3f1-28a1-2a51-6ad90f391c9c@corp.ovh.com> @ 2018-11-17 20:49 ` Baruch Siach 2018-11-20 8:00 ` Thomas Petazzoni 2018-11-20 13:56 ` DUPONCHEEL Sébastien 0 siblings, 2 replies; 10+ messages in thread From: Baruch Siach @ 2018-11-17 20:49 UTC (permalink / raw) To: buildroot Hi S?bastien, Please keep the list on Cc. DUPONCHEEL S?bastien writes: > it's nice to see you here :) > Thank you for your review and comments. > > See my proposal below : > > Le 15/11/2018 ? 19:24, Baruch Siach a ?crit: >> Thanks for your contribution. A few comments below. >> >> DUPONCHEEL S?bastien writes: >> >>> Signed-off-by: DUPONCHEEL S?bastien <sebastien.duponcheel@corp.ovh.com> >>> --- >>> package/shadowsocks-libev/Config.in | 7 +++++++ >>> package/shadowsocks-libev/shadowsocks-libev.mk | 4 ++++ >>> 2 files changed, 11 insertions(+) >>> >>> diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in >>> index f58abdb..acd9a67 100644 >>> --- a/package/shadowsocks-libev/Config.in >>> +++ b/package/shadowsocks-libev/Config.in >>> @@ -15,6 +15,13 @@ config BR2_PACKAGE_SHADOWSOCKS_LIBEV >>> >>> https://github.com/shadowsocks/shadowsocks-libev >>> >>> +config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS >>> + bool "enable connmarktos feature" >>> + depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV >>> + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK >>> + help >>> + Build with the connmark to TOS feature >> If the size increase of enabling this feature is not huge we usually >> just enable it unconditionally when the required dependencies are >> enabled. This reduced the number of config options that the user has to >> go through. > > For now, this feature only concerns ss-server and requires the operation of > advanced iptables and tc rules. This is a very specific feature that will not > be widely used, I think it is better to disable it by default > > So, i propose to be more verbose on what this feature implies : > > config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS > - bool "enable connmarktos feature" > + bool "ss-server: enable connmarktos feature" > depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV > select BR2_PACKAGE_LIBNETFILTER_CONNTRACK > help > - Build with the connmark to TOS feature > + Build ss-server with the connmark to TOS feature. > + This feature require advanced tc, iptables and conntrac > + rules to perform QoS on the server side. > + if unsure say N. Sounds reasonable to me. Let's see what others think. >>> comment "shadowsocks-libev needs a toolchain w/ threads" >>> depends on BR2_TOOLCHAIN_HAS_SYNC_4 >>> depends on BR2_TOOLCHAIN_HAS_SYNC_8 || !BR2_ARCH_IS_64 >>> diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk >>> index 7fdcd3f..34d95ca 100644 >>> --- a/package/shadowsocks-libev/shadowsocks-libev.mk >>> +++ b/package/shadowsocks-libev/shadowsocks-libev.mk >>> @@ -21,4 +21,8 @@ ifeq ($(BR2_riscv),y) >>> SHADOWSOCKS_LIBEV_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_REENTRANT" >>> endif >>> >>> +ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) >> So instead of that do >> >> ifeq ($(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),y) >> >>> +SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos >> If libnetfilter_conntrack is a build time dependency you also need to >> add it to SHADOWSOCKS_LIBEV_DEPENDENCIES here to make sure it build >> before shadowsocks-libev. > > As seen in "squid.mk", i propose to do something like this : > > -SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre > +SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre \ > + $(if $(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),libnetfilter_conntrack) The _OPTS and _DEPENDENCIES additions are usually grouped together. The squid case is spacial because there is no _OPTS change there. >>> +endif >> You should also add --disable-connmarktos (or the equivalent option) in >> the 'else' part of this condition. > > Unfortunately there is no such option. The AC_ARG_ENABLE macro in configure.ac automatically provides --enable-foo and --disable-foo. baruch -- http://baruch.siach.name/blog/ ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il - ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-17 20:49 ` Baruch Siach @ 2018-11-20 8:00 ` Thomas Petazzoni 2018-11-20 9:59 ` DUPONCHEEL Sébastien 2018-11-20 13:56 ` DUPONCHEEL Sébastien 1 sibling, 1 reply; 10+ messages in thread From: Thomas Petazzoni @ 2018-11-20 8:00 UTC (permalink / raw) To: buildroot Hello, On Sat, 17 Nov 2018 22:49:58 +0200, Baruch Siach wrote: > > config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS > > - bool "enable connmarktos feature" > > + bool "ss-server: enable connmarktos feature" > > depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV > > select BR2_PACKAGE_LIBNETFILTER_CONNTRACK > > help > > - Build with the connmark to TOS feature > > + Build ss-server with the connmark to TOS feature. > > + This feature require advanced tc, iptables and conntrac > > + rules to perform QoS on the server side. > > + if unsure say N. > > Sounds reasonable to me. Let's see what others think. Yes, soon reasonable to me as well. Perhaps the option title should be: bool "conmarktos support in ss-server" or bool "ss-server conmarktos support" S?bastien, could you take into account the various comments received from Baruch, and send an updated version ? Thanks! Thomas -- Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-20 8:00 ` Thomas Petazzoni @ 2018-11-20 9:59 ` DUPONCHEEL Sébastien 0 siblings, 0 replies; 10+ messages in thread From: DUPONCHEEL Sébastien @ 2018-11-20 9:59 UTC (permalink / raw) To: buildroot Yes, i am doing this ASAP. Best regards, DUPONCHEEL S?bastien. Le 20/11/2018 ? 09:00, Thomas Petazzoni a ?crit?: > Hello, > > On Sat, 17 Nov 2018 22:49:58 +0200, Baruch Siach wrote: > >>> config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS >>> - bool "enable connmarktos feature" >>> + bool "ss-server: enable connmarktos feature" >>> depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV >>> select BR2_PACKAGE_LIBNETFILTER_CONNTRACK >>> help >>> - Build with the connmark to TOS feature >>> + Build ss-server with the connmark to TOS feature. >>> + This feature require advanced tc, iptables and conntrac >>> + rules to perform QoS on the server side. >>> + if unsure say N. >> Sounds reasonable to me. Let's see what others think. > Yes, soon reasonable to me as well. Perhaps the option title should be: > > bool "conmarktos support in ss-server" > > or > > bool "ss-server conmarktos support" > > S?bastien, could you take into account the various comments received > from Baruch, and send an updated version ? > > Thanks! > > Thomas ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-17 20:49 ` Baruch Siach 2018-11-20 8:00 ` Thomas Petazzoni @ 2018-11-20 13:56 ` DUPONCHEEL Sébastien 2018-11-20 19:36 ` Baruch Siach 2018-11-20 22:25 ` Arnout Vandecappelle 1 sibling, 2 replies; 10+ messages in thread From: DUPONCHEEL Sébastien @ 2018-11-20 13:56 UTC (permalink / raw) To: buildroot Hi Baruch, Please see my feedback below : Le 17/11/2018 ? 21:49, Baruch Siach a ?crit?: > Hi S?bastien, > > Please keep the list on Cc. > > DUPONCHEEL S?bastien writes: >> it's nice to see you here :) >> Thank you for your review and comments. >> >> See my proposal below : >> >> Le 15/11/2018 ? 19:24, Baruch Siach a ?crit: >>> Thanks for your contribution. A few comments below. >>> >>> DUPONCHEEL S?bastien writes: >>> >>>> Signed-off-by: DUPONCHEEL S?bastien <sebastien.duponcheel@corp.ovh.com> >>>> --- >>>> package/shadowsocks-libev/Config.in | 7 +++++++ >>>> package/shadowsocks-libev/shadowsocks-libev.mk | 4 ++++ >>>> 2 files changed, 11 insertions(+) >>>> >>>> diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in >>>> index f58abdb..acd9a67 100644 >>>> --- a/package/shadowsocks-libev/Config.in >>>> +++ b/package/shadowsocks-libev/Config.in >>>> @@ -15,6 +15,13 @@ config BR2_PACKAGE_SHADOWSOCKS_LIBEV >>>> >>>> https://github.com/shadowsocks/shadowsocks-libev >>>> >>>> +config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS >>>> + bool "enable connmarktos feature" >>>> + depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV >>>> + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK >>>> + help >>>> + Build with the connmark to TOS feature >>> If the size increase of enabling this feature is not huge we usually >>> just enable it unconditionally when the required dependencies are >>> enabled. This reduced the number of config options that the user has to >>> go through. >> For now, this feature only concerns ss-server and requires the operation of >> advanced iptables and tc rules. This is a very specific feature that will not >> be widely used, I think it is better to disable it by default >> >> So, i propose to be more verbose on what this feature implies : >> >> config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS >> - bool "enable connmarktos feature" >> + bool "ss-server: enable connmarktos feature" >> depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV >> select BR2_PACKAGE_LIBNETFILTER_CONNTRACK >> help >> - Build with the connmark to TOS feature >> + Build ss-server with the connmark to TOS feature. >> + This feature require advanced tc, iptables and conntrac >> + rules to perform QoS on the server side. >> + if unsure say N. > Sounds reasonable to me. Let's see what others think. > >>>> comment "shadowsocks-libev needs a toolchain w/ threads" >>>> depends on BR2_TOOLCHAIN_HAS_SYNC_4 >>>> depends on BR2_TOOLCHAIN_HAS_SYNC_8 || !BR2_ARCH_IS_64 >>>> diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk >>>> index 7fdcd3f..34d95ca 100644 >>>> --- a/package/shadowsocks-libev/shadowsocks-libev.mk >>>> +++ b/package/shadowsocks-libev/shadowsocks-libev.mk >>>> @@ -21,4 +21,8 @@ ifeq ($(BR2_riscv),y) >>>> SHADOWSOCKS_LIBEV_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_REENTRANT" >>>> endif >>>> >>>> +ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) >>> So instead of that do >>> >>> ifeq ($(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),y) >>> >>>> +SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos >>> If libnetfilter_conntrack is a build time dependency you also need to >>> add it to SHADOWSOCKS_LIBEV_DEPENDENCIES here to make sure it build >>> before shadowsocks-libev. >> As seen in "squid.mk", i propose to do something like this : >> >> -SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre >> +SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre \ >> + $(if $(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),libnetfilter_conntrack) > The _OPTS and _DEPENDENCIES additions are usually grouped together. The > squid case is spacial because there is no _OPTS change there. > >>>> +endif >>> You should also add --disable-connmarktos (or the equivalent option) in >>> the 'else' part of this condition. >> Unfortunately there is no such option. > The AC_ARG_ENABLE macro in configure.ac automatically provides > --enable-foo and --disable-foo. The AC_ARG_ENABLE statement in shadowsocks looks broken, neither --disable-connmarktos nor --enable-connmarktos=no are working. In fact, it activates the feature. ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos else SHADOWSOCKS_LIBEV_CONF_OPTS += --disable-connmarktos endif seb at compile:src/buildroot ?shadowsocks?$ cat .config | grep CONNMARK # BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS is not set seb at compile:src/buildroot ?shadowsocks*?$ ldd ./output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/bin/ss-server | grep libnetfilter_conntrack.so.3 libnetfilter_conntrack.so.3 => /home/seb/src/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libnetfilter_conntrack.so.3 (0x00006f816dde4000) Best regards, DUPONCHEEL S?bastien. > baruch > > -- > http://baruch.siach.name/blog/ ~. .~ Tk Open Systems > =}------------------------------------------------ooO--U--Ooo------------{= > - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il - -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20181120/04ab28d9/attachment.html> ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-20 13:56 ` DUPONCHEEL Sébastien @ 2018-11-20 19:36 ` Baruch Siach 2018-11-20 22:25 ` Arnout Vandecappelle 1 sibling, 0 replies; 10+ messages in thread From: Baruch Siach @ 2018-11-20 19:36 UTC (permalink / raw) To: buildroot Hi S?bastien, DUPONCHEEL S?bastien writes: >>>> You should also add --disable-connmarktos (or the equivalent option) in >>>> the 'else' part of this condition. >>> Unfortunately there is no such option. >> The AC_ARG_ENABLE macro in configure.ac automatically provides >> --enable-foo and --disable-foo. > > The AC_ARG_ENABLE statement in shadowsocks looks broken, neither --disable-connmarktos > nor --enable-connmarktos=no are working. In fact, it activates the feature. > > ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) > SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack > SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos > else > SHADOWSOCKS_LIBEV_CONF_OPTS += --disable-connmarktos > endif > > seb at compile:src/buildroot ?shadowsocks?$ cat .config | grep CONNMARK > # BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS is not set > seb at compile:src/buildroot ?shadowsocks*?$ ldd ./output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/bin/ss-server | grep libnetfilter_conntrack.so.3 > libnetfilter_conntrack.so.3 => /home/seb/src/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libnetfilter_conntrack.so.3 (0x00006f816dde4000) Did you try full rebuild? Changing the Buildroot config does not trigger rebuild of already built packages. https://buildroot.org/downloads/manual/manual.html#full-rebuild For a single package test you can use this shortcut instead of a full rebuild: rm -r output/build/shadowsocks-libev-* make shadowsocks-libev baruch -- http://baruch.siach.name/blog/ ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il - ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-20 13:56 ` DUPONCHEEL Sébastien 2018-11-20 19:36 ` Baruch Siach @ 2018-11-20 22:25 ` Arnout Vandecappelle 2018-11-21 10:59 ` DUPONCHEEL Sébastien 1 sibling, 1 reply; 10+ messages in thread From: Arnout Vandecappelle @ 2018-11-20 22:25 UTC (permalink / raw) To: buildroot On 20/11/2018 14:56, DUPONCHEEL S?bastien wrote: > Hi Baruch, > > Please see my feedback below : > > Le 17/11/2018 ? 21:49, Baruch Siach a ?crit?: [snip] >> The AC_ARG_ENABLE macro in configure.ac automatically provides >> --enable-foo and --disable-foo. > > The AC_ARG_ENABLE statement in shadowsocks looks broken, neither --disable-connmarktos > nor --enable-connmarktos=no are working. In fact, it activates the feature. Yes, that's a classic problem - people refuse to read documentation so they don't notice that the third argument is not "code to run when the option is yes" but actually it is "code to run when the option is given". So, either you fix this by patching shadowsocks-libev's configure.ac and replacing - enable_connmarktos="yes" + enable_connmarktos="$enableval" and sending the patch upstream, or you do ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos # --disable-connmarktos *enables* it. endif Obviously, the first option is preferred. Regards, Arnout > > ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) > SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack > SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos > else > SHADOWSOCKS_LIBEV_CONF_OPTS += --disable-connmarktos > endif > > seb at compile:src/buildroot ?shadowsocks?$ cat .config | grep CONNMARK > # BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS is not set > seb at compile:src/buildroot ?shadowsocks*?$ ldd ./output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/bin/ss-server | grep libnetfilter_conntrack.so.3 > libnetfilter_conntrack.so.3 => /home/seb/src/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libnetfilter_conntrack.so.3 (0x00006f816dde4000) > > Best regards, > DUPONCHEEL S?bastien. > >> baruch >> >> -- >> http://baruch.siach.name/blog/ ~. .~ Tk Open Systems >> =}------------------------------------------------ooO--U--Ooo------------{= >> - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il - > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot > ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option 2018-11-20 22:25 ` Arnout Vandecappelle @ 2018-11-21 10:59 ` DUPONCHEEL Sébastien 0 siblings, 0 replies; 10+ messages in thread From: DUPONCHEEL Sébastien @ 2018-11-21 10:59 UTC (permalink / raw) To: buildroot Pull request opened upstream, thank you. Best regards, DUPONCHEEL S?bastien Le 20/11/2018 ? 23:25, Arnout Vandecappelle a ?crit?: > > On 20/11/2018 14:56, DUPONCHEEL S?bastien wrote: >> Hi Baruch, >> >> Please see my feedback below : >> >> Le 17/11/2018 ? 21:49, Baruch Siach a ?crit?: > [snip] >>> The AC_ARG_ENABLE macro in configure.ac automatically provides >>> --enable-foo and --disable-foo. >> The AC_ARG_ENABLE statement in shadowsocks looks broken, neither --disable-connmarktos >> nor --enable-connmarktos=no are working. In fact, it activates the feature. > Yes, that's a classic problem - people refuse to read documentation so they > don't notice that the third argument is not "code to run when the option is yes" > but actually it is "code to run when the option is given". > > So, either you fix this by patching shadowsocks-libev's configure.ac and replacing > > - enable_connmarktos="yes" > + enable_connmarktos="$enableval" > > and sending the patch upstream, or you do > > ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) > SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack > SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos > # --disable-connmarktos *enables* it. > endif > > Obviously, the first option is preferred. > > Regards, > Arnout > >> ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) >> SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack >> SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos >> else >> SHADOWSOCKS_LIBEV_CONF_OPTS += --disable-connmarktos >> endif >> >> seb at compile:src/buildroot ?shadowsocks?$ cat .config | grep CONNMARK >> # BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS is not set >> seb at compile:src/buildroot ?shadowsocks*?$ ldd ./output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/bin/ss-server | grep libnetfilter_conntrack.so.3 >> libnetfilter_conntrack.so.3 => /home/seb/src/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libnetfilter_conntrack.so.3 (0x00006f816dde4000) >> >> Best regards, >> DUPONCHEEL S?bastien. >> >>> baruch >>> >>> -- >>> http://baruch.siach.name/blog/ ~. .~ Tk Open Systems >>> =}------------------------------------------------ooO--U--Ooo------------{= >>> - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il - >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot >> ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option @ 2018-11-21 15:12 DUPONCHEEL Sébastien 0 siblings, 0 replies; 10+ messages in thread From: DUPONCHEEL Sébastien @ 2018-11-21 15:12 UTC (permalink / raw) To: buildroot Signed-off-by: DUPONCHEEL S?bastien <sebastien.duponcheel@corp.ovh.com> --- package/shadowsocks-libev/Config.in | 7 +++++++ package/shadowsocks-libev/shadowsocks-libev.mk | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in index f58abdb..acd9a67 100644 --- a/package/shadowsocks-libev/Config.in +++ b/package/shadowsocks-libev/Config.in @@ -15,6 +15,13 @@ config BR2_PACKAGE_SHADOWSOCKS_LIBEV https://github.com/shadowsocks/shadowsocks-libev +config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS + bool "enable connmarktos feature" + depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK + help + Build with the connmark to TOS feature + comment "shadowsocks-libev needs a toolchain w/ threads" depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_TOOLCHAIN_HAS_SYNC_8 || !BR2_ARCH_IS_64 diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk index 7fdcd3f..34d95ca 100644 --- a/package/shadowsocks-libev/shadowsocks-libev.mk +++ b/package/shadowsocks-libev/shadowsocks-libev.mk @@ -21,4 +21,8 @@ ifeq ($(BR2_riscv),y) SHADOWSOCKS_LIBEV_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_REENTRANT" endif +ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y) +SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos +endif + $(eval $(autotools-package)) -- 2.7.4 ^ permalink raw reply related [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-11-21 15:12 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-15 16:43 [Buildroot] [PATCH 1/1] shadowsocks-libev: add connmarktos build option DUPONCHEEL Sébastien
2018-11-15 18:24 ` Baruch Siach
[not found] ` <25f6955b-c3f1-28a1-2a51-6ad90f391c9c@corp.ovh.com>
2018-11-17 20:49 ` Baruch Siach
2018-11-20 8:00 ` Thomas Petazzoni
2018-11-20 9:59 ` DUPONCHEEL Sébastien
2018-11-20 13:56 ` DUPONCHEEL Sébastien
2018-11-20 19:36 ` Baruch Siach
2018-11-20 22:25 ` Arnout Vandecappelle
2018-11-21 10:59 ` DUPONCHEEL Sébastien
-- strict thread matches above, loose matches on Subject: below --
2018-11-21 15:12 DUPONCHEEL Sébastien
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox