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

build.patch
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
   endif
+  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_NAME:=dnsmasq
-PKG_UPSTREAM_VERSION:=2.84test3
+PKG_UPSTREAM_VERSION:=2.84
 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION)))
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_UPSTREAM_VERSION).tar.xz
-PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq/test-releases
-PKG_HASH:=20d1109c991ca08778ea20322b8f3245f2e974688d494b59b2e6ae096ec592b1
+PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq
+PKG_HASH:=603195c64b73137609b07e1024ae0b37f652b2f5fe467dce66985b3d1850050c
 
 PKG_LICENSE:=GPL-2.0
 PKG_LICENSE_FILES:=COPYING
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
 ARCH:=arm
 BOARDNAME:=Marvell Armada 37x/38x/XP
 CPU_TYPE:=cortex-a9
-CPU_SUBTYPE:=vfpv3-d16
+CPU_SUBTYPE:=vfpv3
 KERNELNAME:=zImage dtbs

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

3 Likes

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.