Comments (3)
We could create something that takes a specified timestamp from somewhere else, like
a debian packaging release time. If that doesn't exist, we'll use compile-time like now.
Just brainstorming.
/O
On 30 Jan 2015, at 12:03, Victor Seva [email protected] wrote:
Debian has this goal
https://wiki.debian.org/ReproducibleBuilds/As you can see here https://reproducible.debian.net/rb-pkg/kamailio.html we are using TIME and DATE macros
gcc -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Werror=date-time -D_FORTIFY_SOURCE=2 -DNAME='"kamailio"' -DVERSION='"4.2.0"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 4.9.2"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=4002000 -DCFG_DIR='"/etc/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DF_MALLOC -DDBG_F_MALLOC -DMEM_JOIN_FREE -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DUSE_RAW_SOCKS -
DHAVE_EP
OLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -c ver.c -o ver.o -MMD -MP
ver.c:38:35: error: macro "TIME" might prevent reproducible builds [-Werror=date-time]
const char ver_compiled_time[] = TIME " " DATE ;
^
ver.c:38:48: error: macro "DATE" might prevent reproducible builds [-Werror=date-time]
const char ver_compiled_time[] = TIME " " DATE ;
^
cc1: some warnings being treated as errors
Can we introduce a Make option to avoid this?—
Reply to this email directly or view it on GitHub.
sr-dev mailing list
[email protected]
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
from kamailio.
I see the options:
- if compiled with a flag (e.g., NO_VERSION_DATE), skip adding it completely
- if compiled with VERSION_DATE=xyz and VERSION_TIME=abc, then add them instead of predefined macros
- if none of above, then compile as it is
It should cover all cases one would like to have, I think.
from kamailio.
Pushed a patch in master allowing to disable adding time/date in version string as well as setting a particular value.
from kamailio.
Related Issues (20)
- Kamailio 5.8 core dumps with regex module HOT 2
- free_fixup functions in cmd_export_t are not called HOT 4
- Core parameters user_agent_header fail to take effect HOT 1
- Misleading source IP of 1.0.0.127 in event routes HOT 3
- ERROR cfgtrace:dbg_cfg_trace() HOT 1
- Hello, I would like to confirm if our SMS module supports sending long SMS messages ? HOT 1
- Memory usage increases everytime tls.reload is executed HOT 9
- Error by installing new Rel. 5.8 HOT 2
- ERROR: <core> [core/ppcfg.c:275]: pp_ifdef_level_error(): different number of preprocessor directives: 1 more #!if[n]def as #!endif HOT 1
- The tm.cancel function does not generate a “tm:local-request” event. HOT 1
- app_python3: make it compatible with TLS refactoring HOT 2
- Mem leak in smsops which leads to the udp receiver process leak memory continuously HOT 4
- possible memory corruption in sipcapture module HOT 10
- pua_dialoginfo fails to publish the caller when not using avps
- phonenum: fails to build on sid HOT 1
- kamailio re-INVITE HOT 1
- Possible Mem leak in Core HOT 2
- Kamailio incoming call error HOT 1
- sql_query fails from tcp:closed event_route HOT 10
- Usrloc keepalive: Not sending OPTIONS to UDP endpoints- 5.8.0 and 5.8.1 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kamailio.