Differences between Stock OpenWrt and Comunnity Build

Hi! simple noob question here, what's the differences between stock OpenWrt and community builds? I've seen for instance two community builds for my Linksys WRT3200ACM and similar amount for the Netgear R7800.

For me, It's just a matter of installing the same packages in stock and maybe some firmware and drivers files to get the same functionality from the community build, but that's just wrong I guess...

So, that's the question, thanks a lot for the answers!

The answer will be dependant of the individual generating the image, but some things to check:

  • config.seed for what is generated, options selected
  • config.seed GCC optimisations
  • patches applied, whether optimisations, extra bits not yet in master
  • manifest as to what is actually baked into the image vs. what is available for install
  • ...

for example, one thing for me building to wrtpac images today

diff --git a/include/target.mk b/include/target.mk
index edc6a146de..37d127616d 100644
--- a/include/target.mk
+++ b/include/target.mk
@@ -233,6 +233,9 @@ ifeq ($(DUMP),1)
     CPU_TYPE = sparc
     CPU_CFLAGS_ultrasparc = -mcpu=ultrasparc
+  ifeq ($(ARCH),arm)
+    CPU_CFLAGS_cortex-a9 = -mthumb
+  endif
   ifeq ($(ARCH),aarch64)
     CPU_TYPE ?= generic
     CPU_CFLAGS_generic = -mcpu=generic
diff --git a/package/network/services/dnsmasq/Makefile b/package/network/services/dnsmasq/Makefile
index 2e404dfef3..fc733a4eaf 100644
--- a/package/network/services/dnsmasq/Makefile
+++ b/package/network/services/dnsmasq/Makefile
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION)))
diff --git a/target/linux/mvebu/cortexa9/target.mk b/target/linux/mvebu/cortexa9/target.mk
index cdd4d86e49..2a75599bc9 100644
--- a/target/linux/mvebu/cortexa9/target.mk
+++ b/target/linux/mvebu/cortexa9/target.mk
@@ -10,5 +10,5 @@ include $(TOPDIR)/rules.mk
 BOARDNAME:=Marvell Armada 37x/38x/XP
 KERNELNAME:=zImage dtbs

to get right architecture, shrink some bits, and get the current fixup for DNSMasq. Probably different tomorrow.


Oh I see, so is not just a matter of packages and correct hardware firmware, but instead applying optimizations for that specific hardware and taking advantage of kernel + software patches available to get the bleeding edge changes/optimizations at build time.

Am I correct?

That and then some. If you are looking for wrtpac images there are some to be found off the link on my avatar or github, both 5.4.x and similar 5.10.x builds; there are still some things not building with 5.10.x.