From 4b4d201a6dfd67f14d42ae352fdeede3b4364f74 Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Sat, 9 Feb 2013 22:05:15 +0000 Subject: [PATCH] build: reorganise AM_CPPFLAGS handling so that we can disable the shitload of warnings Bullet spits at us. --- configure.ac | 32 ++++++++++++++++++++------------ src/Makefile.am | 2 +- src/bullet/Makefile.am | 7 +++++-- test/Makefile.am | 18 ++++-------------- test/math/Makefile.am | 14 +++----------- test/sandbox/Makefile.am | 6 +----- test/xolotl/Makefile.am | 6 +----- tutorial/Makefile.am | 30 +++++++----------------------- 8 files changed, 42 insertions(+), 73 deletions(-) diff --git a/configure.ac b/configure.ac index 92943bfc..5645c5c6 100644 --- a/configure.ac +++ b/configure.ac @@ -140,11 +140,11 @@ AM_CONDITIONAL(USE_LATEX, test "${LATEX}" != "no") AM_CONDITIONAL(USE_DOT, test "${DOT}" != "no") dnl No exceptions -CXXFLAGS="${CXXFLAGS} -fno-exceptions -fno-rtti" +AM_CXXFLAGS="${AM_CXXFLAGS} -fno-exceptions -fno-rtti" dnl Optimizations -CXXFLAGS="${CXXFLAGS} ${REL} ${OPT}" +AM_CXXFLAGS="${AM_CXXFLAGS} ${REL} ${OPT}" dnl Code qui fait des warnings == code de porc == deux baffes dans ta gueule -CXXFLAGS="${CXXFLAGS} -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wshadow -Wsign-compare" +AM_CPPFLAGS="${AM_CPPFLAGS} -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wshadow -Wsign-compare" AC_CHECK_LIB(m, sin, MATH_LIBS="${MATH_LIBS} -lm") AC_CHECK_LIB(pthread, main, LIBS="$LIBS -lpthread") @@ -181,7 +181,7 @@ AC_CHECK_LIB(sysmodule_stub, cellSysmoduleLoadModule, dnl For the pad library LOL_LIBS="${LOL_LIBS} -lio_stub -lusbd_stub -lpadfilter" dnl Disable this warning, it's too verbose with vector.h - CXXFLAGS="${CXXFLAGS} -Wno-sign-compare" + AM_CXXFLAGS="${AM_CXXFLAGS} -Wno-sign-compare" AC_PATH_PROG(MAKE_FSELF, make_fself, no) if test "${MAKE_FSELF}" = "no"; then AC_MSG_ERROR([[Building for PS3 but make_fself not found]]) @@ -196,7 +196,7 @@ LIBS="$LIBS -mwindows -mwin32" AC_MSG_CHECKING(for -mwindows -mwin32) AC_TRY_LINK([], [], [AC_MSG_RESULT(yes) - CXXFLAGS="${CXXFLAGS} -mwindows -mwin32" + AM_CXXFLAGS="${AM_CXXFLAGS} -mwindows -mwin32" LOL_LIBS="${LOL_LIBS} -uWinMain -u_WinMain@16"], [AC_MSG_RESULT(no)]) LIBS="$LIBS_save" @@ -249,7 +249,7 @@ AC_LANG_PUSH(C++) AC_CHECK_HEADERS(ppapi/cpp/instance.h, [ac_cv_my_have_nacl="yes" dnl Disable this warning, it's too verbose with vector.h - CXXFLAGS="${CXXFLAGS} -Wno-sign-compare"]) + AM_CXXFLAGS="${AM_CXXFLAGS} -Wno-sign-compare"]) AC_LANG_POP(C++) AM_CONDITIONAL(USE_NACL, test "${ac_cv_my_have_nacl}" != "no") @@ -350,18 +350,26 @@ AC_SUBST(MATH_LIBS) AC_SUBST(PAM_LIBS) AC_SUBST(UTIL_LIBS) -dnl How to use the Lol Engine inside this tree -LOL_CFLAGS="$LOL_CFLAGS -I\$(top_srcdir)/src" -LOL_CFLAGS="$LOL_CFLAGS -DLOL_SOURCE_SUBDIR=\\\"\$(subdir)\\\"" +dnl How to use the Lol Engine outside this tree LOL_CFLAGS="$LOL_CFLAGS $SDL_CFLAGS $GL_CFLAGS $EGL_CFLAGS $LIBPNG_CFLAGS" LOL_LIBS="$LOL_LIBS $SDL_LIBS $GL_LIBS $EGL_LIBS $LIBPNG_LIBS $D3D_LIBS" -LOL_STATIC_LIBS="\$(top_builddir)/src/liblolcore.a $LOL_STATIC_LIBS" -LOL_STATIC_LIBS="\$(top_builddir)/src/bullet/liblolbullet.a $LOL_STATIC_LIBS" + +dnl How to use the Lol Engine inside this tree +AM_CPPFLAGS="${AM_CPPFLAGS} -I\$(top_srcdir)/src" +AM_CPPFLAGS="${AM_CPPFLAGS} -DLOL_SOURCE_SUBDIR=\\\"\$(subdir)\\\"" +AM_CPPFLAGS="${AM_CPPFLAGS} $LOL_CFLAGS" +AM_LDFLAGS="${AM_LDFLAGS} \$(top_builddir)/src/liblolcore.a" +AM_LDFLAGS="${AM_LDFLAGS} \$(top_builddir)/src/bullet/liblolbullet.a" +AM_LDFLAGS="${AM_LDFLAGS} $LOL_LIBS" dnl Extra flags AC_SUBST(LOL_CFLAGS) AC_SUBST(LOL_LIBS) -AC_SUBST(LOL_STATIC_LIBS) + +AC_SUBST(AM_CFLAGS) +AC_SUBST(AM_CPPFLAGS) +AC_SUBST(AM_CXXFLAGS) +AC_SUBST(AM_LDFLAGS) AC_SUBST(USE_DOT) diff --git a/src/Makefile.am b/src/Makefile.am index e136d0ad..86ac0cc1 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -25,7 +25,7 @@ liblolcore_a_SOURCES = \ $(sdl_sources) \ $(d3d9_sources) \ $(android_sources) -liblolcore_a_CPPFLAGS = @LOL_CFLAGS@ -I$(srcdir)/bullet +liblolcore_a_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/bullet EXTRA_DIST = easymesh/easymesh-scanner.l easymesh/easymesh-parser.y \ gpu/lolfx-scanner.l gpu/lolfx-parser.y diff --git a/src/bullet/Makefile.am b/src/bullet/Makefile.am index 9e97cce9..6c5285e6 100644 --- a/src/bullet/Makefile.am +++ b/src/bullet/Makefile.am @@ -4,7 +4,10 @@ include $(top_srcdir)/build/autotools/common.am noinst_LIBRARIES = liblolbullet.a liblolbullet_a_SOURCES = $(bullet_sources) -liblolbullet_a_CPPFLAGS = @LOL_CFLAGS@ -I$(srcdir) +liblolbullet_a_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir) \ + -Wno-shadow -Wno-unused -Wno-cast-qual -Wno-strict-aliasing \ + -Wno-maybe-uninitialized -Wno-narrowing -Wno-parentheses \ + -Wno-reorder bullet_sources = @@ -41,7 +44,7 @@ bullet_sources += \ BulletMultiThreaded/Win32ThreadSupport.h \ BulletMultiThreaded/SequentialThreadSupport.h -libBulletMultiThreaded_la_CXXFLAGS = ${CXXFLAGS} -I./BulletMultiThreaded/vectormath/scalar/cpp +libBulletMultiThreaded_la_CXXFLAGS = -I./BulletMultiThreaded/vectormath/scalar/cpp bullet_sources += \ BulletMultiThreaded/SpuCollisionObjectWrapper.cpp \ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp \ diff --git a/test/Makefile.am b/test/Makefile.am index ba76f16c..2dafe1b6 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -3,8 +3,6 @@ include $(top_srcdir)/build/autotools/common.am SUBDIRS = math sandbox xolotl -AM_CPPFLAGS = -I$(top_srcdir)/src - bench: benchsuite$(EXEEXT) ./benchsuite$(EXEEXT) @@ -24,16 +22,12 @@ testsuite_SOURCES = testsuite.cpp \ unit/build.cpp unit/real.cpp unit/image.cpp unit/quat.cpp unit/cmplx.cpp \ unit/array.cpp unit/rotation.cpp unit/string.cpp unit/map.cpp \ unit/color.cpp unit/atomic.cpp -testsuite_CPPFLAGS = @LOL_CFLAGS@ -testsuite_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -testsuite_DEPENDENCIES = @LOL_STATIC_LIBS@ +testsuite_CPPFLAGS = $(AM_CPPFLAGS) benchsuite_SOURCES = benchsuite.cpp \ benchmark/vector.cpp benchmark/half.cpp benchmark/trig.cpp \ benchmark/real.cpp -benchsuite_CPPFLAGS = @LOL_CFLAGS@ -benchsuite_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -benchsuite_DEPENDENCIES = @LOL_STATIC_LIBS@ +benchsuite_CPPFLAGS = $(AM_CPPFLAGS) btphystest_SOURCES = BtPhysTest.cpp BtPhysTest.h PhysicObject.h \ Physics/Src/EasyPhysics.cpp Physics/Include/EasyPhysics.h \ @@ -44,13 +38,9 @@ btphystest_SOURCES = BtPhysTest.cpp BtPhysTest.h PhysicObject.h \ Physics/Include/EasyConstraint.h \ Physics/Src/BulletCharacterController.cpp \ Physics/Include/BulletCharacterController.h -btphystest_CPPFLAGS = @LOL_CFLAGS@ -I$(top_srcdir)/src/bullet \ +btphystest_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/src/bullet \ -DHAVE_PHYS_USE_BULLET -btphystest_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -btphystest_DEPENDENCIES = @LOL_STATIC_LIBS@ meshviewer_SOURCES = MeshViewer.cpp -meshviewer_CPPFLAGS = @LOL_CFLAGS@ -meshviewer_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -meshviewer_DEPENDENCIES = @LOL_STATIC_LIBS@ +meshviewer_CPPFLAGS = $(AM_CPPFLAGS) diff --git a/test/math/Makefile.am b/test/math/Makefile.am index 69425022..c5815a3c 100644 --- a/test/math/Makefile.am +++ b/test/math/Makefile.am @@ -1,24 +1,16 @@ include $(top_srcdir)/build/autotools/common.am -AM_CPPFLAGS = -I$(top_srcdir)/src - EXTRA_DIST = NEWS.txt lolremez.sln remez.vcxproj remez.vcxproj.filters noinst_PROGRAMS = pi poly remez pi_SOURCES = pi.cpp -pi_CPPFLAGS = @LOL_CFLAGS@ -pi_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -pi_DEPENDENCIES = @LOL_STATIC_LIBS@ +pi_CPPFLAGS = $(AM_CPPFLAGS) poly_SOURCES = poly.cpp -poly_CPPFLAGS = @LOL_CFLAGS@ -poly_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -poly_DEPENDENCIES = @LOL_STATIC_LIBS@ +poly_CPPFLAGS = $(AM_CPPFLAGS) remez_SOURCES = remez.cpp -remez_CPPFLAGS = @LOL_CFLAGS@ -remez_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -remez_DEPENDENCIES = @LOL_STATIC_LIBS@ +remez_CPPFLAGS = $(AM_CPPFLAGS) diff --git a/test/sandbox/Makefile.am b/test/sandbox/Makefile.am index 18ec0304..65690666 100644 --- a/test/sandbox/Makefile.am +++ b/test/sandbox/Makefile.am @@ -1,12 +1,8 @@ include $(top_srcdir)/build/autotools/common.am -AM_CPPFLAGS = -I$(top_srcdir)/src - noinst_PROGRAMS = sample sample_SOURCES = sample.cpp -sample_CPPFLAGS = @LOL_CFLAGS@ -sample_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -sample_DEPENDENCIES = @LOL_STATIC_LIBS@ +sample_CPPFLAGS = $(AM_CPPFLAGS) diff --git a/test/xolotl/Makefile.am b/test/xolotl/Makefile.am index cd1122dc..236c2747 100644 --- a/test/xolotl/Makefile.am +++ b/test/xolotl/Makefile.am @@ -1,12 +1,8 @@ include $(top_srcdir)/build/autotools/common.am -AM_CPPFLAGS = -I$(top_srcdir)/src - noinst_PROGRAMS = xolotl xolotl_SOURCES = xolotl.cpp xolotl.h -xolotl_CPPFLAGS = @LOL_CFLAGS@ -xolotl_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -xolotl_DEPENDENCIES = @LOL_STATIC_LIBS@ +xolotl_CPPFLAGS = $(AM_CPPFLAGS) diff --git a/tutorial/Makefile.am b/tutorial/Makefile.am index b590741a..aab5f719 100644 --- a/tutorial/Makefile.am +++ b/tutorial/Makefile.am @@ -1,43 +1,27 @@ include $(top_srcdir)/build/autotools/common.am -AM_CPPFLAGS = -I$(top_srcdir)/src - noinst_PROGRAMS = 01_triangle 02_cube 03_noise 04_texture 05_easymesh \ 08_fbo 11_fractal 01_triangle_SOURCES = 01_triangle.cpp 01_triangle.lolfx -01_triangle_CPPFLAGS = @LOL_CFLAGS@ -01_triangle_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -01_triangle_DEPENDENCIES = @LOL_STATIC_LIBS@ +01_triangle_CPPFLAGS = $(AM_CPPFLAGS) 02_cube_SOURCES = 02_cube.cpp 02_cube.lolfx -02_cube_CPPFLAGS = @LOL_CFLAGS@ -02_cube_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -02_cube_DEPENDENCIES = @LOL_STATIC_LIBS@ +02_cube_CPPFLAGS = $(AM_CPPFLAGS) 03_noise_SOURCES = 03_noise.cpp 03_noise.lolfx -03_noise_CPPFLAGS = @LOL_CFLAGS@ -03_noise_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -03_noise_DEPENDENCIES = @LOL_STATIC_LIBS@ +03_noise_CPPFLAGS = $(AM_CPPFLAGS) 04_texture_SOURCES = 04_texture.cpp 04_texture.lolfx -04_texture_CPPFLAGS = @LOL_CFLAGS@ -04_texture_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -04_texture_DEPENDENCIES = @LOL_STATIC_LIBS@ +04_texture_CPPFLAGS = $(AM_CPPFLAGS) 05_easymesh_SOURCES = 05_easymesh.cpp -05_easymesh_CPPFLAGS = @LOL_CFLAGS@ -05_easymesh_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -05_easymesh_DEPENDENCIES = @LOL_STATIC_LIBS@ +05_easymesh_CPPFLAGS = $(AM_CPPFLAGS) 08_fbo_SOURCES = 08_fbo.cpp 08_fbo.lolfx -08_fbo_CPPFLAGS = @LOL_CFLAGS@ -08_fbo_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -08_fbo_DEPENDENCIES = @LOL_STATIC_LIBS@ +08_fbo_CPPFLAGS = $(AM_CPPFLAGS) 11_fractal_SOURCES = 11_fractal.cpp 11_fractal.lolfx -11_fractal_CPPFLAGS = @LOL_CFLAGS@ -11_fractal_LDFLAGS = @LOL_STATIC_LIBS@ @LOL_LIBS@ -11_fractal_DEPENDENCIES = @LOL_STATIC_LIBS@ +11_fractal_CPPFLAGS = $(AM_CPPFLAGS)