Issue #6360 has been reported by luislavena (Luis Lavena). ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 1.9.3 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2012-04-26 01:47
on 2012-08-04 17:23
Issue #6360 has been updated by luislavena (Luis Lavena). Target version changed from 1.9.3 to 2.0.0 =begin Hello, Friendly reminder than this still happens in trunk and ruby_1_9_3: http://ci.rubyinstaller.org/job/ruby-trunk-x86/94/console CC = mingw32-gcc LD = ld LDSHARED = mingw32-gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp And Ruby 1.9.3: CC = mingw32-gcc LD = ld LDSHARED = mingw32-gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby191.dll.a msvcrt-ruby191.def SOLIBS = msvcrt-ruby191.res.o -lshell32 -lws2_32 -limagehlp Thank you. =end ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-28647 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.0.0 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2013-02-18 13:43
Issue #6360 has been updated by mame (Yusuke Endoh). Target version changed from 2.0.0 to 2.1.0 Sorry, but postponing it to 2.1.0. I believe that Luis can work around the issue, -- Yusuke Endoh <mame@tsg.ne.jp> ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-36519 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.1.0 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2013-02-18 14:17
Issue #6360 has been updated by luislavena (Luis Lavena). mame (Yusuke Endoh) wrote: > Sorry, but postponing it to 2.1.0. > I believe that Luis can work around the issue, > Sorry, but as I mentioned in this, the change to default compile debug symbols is a bug and a regression. Revisions in 1.9.3 prior 194 didn't suffer this. Ruby 2.0.0 release will suffer by this too due r34840 Debug symbols shouldn't be generated by default unless requested by the user compiling the package. This is the same as adding -Werror, shouldn't be done by default. While I personally can work around this issue, not everybody is aware that Ruby's default compile behavior is include debug information. Please review this decision. Thank you. ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-36528 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.1.0 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2013-02-18 14:23
Issue #6360 has been updated by mame (Yusuke Endoh). Can you create a patch and get "ok" from nobu or any reliable person? -- Yusuke Endoh <mame@tsg.ne.jp> ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-36529 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.1.0 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2013-02-18 15:28
Issue #6360 has been updated by ko1 (Koichi Sasada). Target version changed from 2.1.0 to 2.0.0 ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-36531 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.0.0 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2013-02-18 15:40
Issue #6360 has been updated by mame (Yusuke Endoh). I don't think that this is a showstopper; it actually works. But if trunk can be fixed soon by an assured patch, I'm not against backporting it. -- Yusuke Endoh <mame@tsg.ne.jp> ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-36532 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.0.0 ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
on 2013-02-20 08:28
Issue #6360 has been updated by mame (Yusuke Endoh). Target version changed from 2.0.0 to next minor ---------------------------------------- Bug #6360: Debug information build even without requesting it https://bugs.ruby-lang.org/issues/6360#change-36662 Author: luislavena (Luis Lavena) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: next minor ruby -v: 2.0.0 i386-mingw32 r35473 Hello, While working on latest RubyInstaller release for 1.9.3-p194 our team detected a bigger shared library and import library being generated. After further inspection, we found this commit: https://github.com/ruby/ruby/commit/ffdaca1d748804... Backported r34840 into ruby_1_9_3 branch The above change added -ggdb to CFLAGS even when was not provided by debugflags configure option. The following is the comparison of "make" summary with and without the change: Current trunk: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -O3 -fno-omit-frame-pointer -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Reverting r34840: <pre> C:\Users\Luis\Projects\oss\ruby\build32>make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=32767 -D_WIN32_WINNT=0x0501 -I. -I.ext/include/i386-mingw32 -I../include -I.. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby200.dll.a msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp </pre> Notice that -g changed into -ggdb instead. I think debug symbols shouldn't be compiled unless requested and this is a regression.
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.