* [LTP] [PATCH] realtime: fix broken build configuration files and warnings
@ 2009-10-23 12:16 gowrishankar
2009-10-23 15:44 ` Garrett Cooper
0 siblings, 1 reply; 6+ messages in thread
From: gowrishankar @ 2009-10-23 12:16 UTC (permalink / raw)
To: subrata; +Cc: ltp-list
[-- Attachment #1: Type: text/plain, Size: 515 bytes --]
Hi Subrata,
Please accept the patch below.
Thanks,
Gowri
--
[PATCH] realtime: fix broken build configuration files and warnings
Patch below fixes the recent changes applied over realtime tests
build structure. These changes left the realtime tests in broken
state with missing includes and libraries. Now tests can be built
just like other tests in LTP.
Signed-off-by: Gowrishankar <gowrishankar.m@in.ibm.com>
Tested-by: Gowrishankar <gowrishankar.m@in.ibm.com>
Acked-by: Sripathi Kodi <sripathik@in.ibm.com>
--
[-- Attachment #2: build.patch --]
[-- Type: text/x-patch, Size: 4899 bytes --]
Index: ltp.tmp/testcases/realtime/Makefile
===================================================================
--- ltp.tmp.orig/testcases/realtime/Makefile 2009-10-22 20:43:55.000000000 +0530
+++ ltp.tmp/testcases/realtime/Makefile 2009-10-22 23:11:31.000000000 +0530
@@ -24,4 +24,22 @@
include $(top_srcdir)/include/mk/env_pre.mk
include $(abs_srcdir)/config.mk
+
+LIBDIR := lib
+FILTER_OUT_DIRS := $(LIBDIR)
+LIB := $(LIBDIR)/librealtime.a
+
+$(LIBDIR):
+ mkdir -p "$@"
+
+$(LIB): $(LIBDIR)
+ $(MAKE) -C $^ -f "$(abs_srcdir)/$(LIBDIR)/Makefile" all
+
+trunk-all: $(LIB)
+
+trunk-clean:: | lib-clean
+
+lib-clean:: $(LIBDIR)
+ $(MAKE) -C $^ -f "$(abs_srcdir)/$(LIBDIR)/Makefile" clean
+
include $(top_srcdir)/include/mk/generic_trunk_target.mk
Index: ltp.tmp/testcases/realtime/lib/Makefile
===================================================================
--- ltp.tmp.orig/testcases/realtime/lib/Makefile 2009-10-22 20:45:49.000000000 +0530
+++ ltp.tmp/testcases/realtime/lib/Makefile 2009-10-22 20:51:10.000000000 +0530
@@ -23,7 +23,8 @@
top_srcdir ?= ../../..
include $(top_srcdir)/include/mk/env_pre.mk
+include ../config.mk
LIB := librealtime.a
-include $(top_srcdir)/include/mk/generic_leaf_target.mk
+include $(top_srcdir)/include/mk/lib.mk
Index: ltp.tmp/testcases/realtime/config.mk
===================================================================
--- ltp.tmp.orig/testcases/realtime/config.mk 2009-10-22 21:40:42.000000000 +0530
+++ ltp.tmp/testcases/realtime/config.mk 2009-10-22 22:57:20.000000000 +0530
@@ -20,9 +20,25 @@
# Garrett Cooper, September 2009
#
+# Check kernel/glibc support for PI and Robust mutexes and cache
+# the result.
-# Default stuff common to all testcases
+realtimedir = $(abs_top_srcdir)/testcases/realtime
+
+ifeq ($(shell [ -e $(realtimedir)/.config ] && echo yes), yes)
+ HAVE_PI_MUTEX := $(shell grep HAVE_PI_MUTEX $(realtimedir)/.config | \
+ awk '{print $$2}')
+ HAVE_ROBUST_MUTEX := $(shell grep HAVE_ROBUST_MUTEX $(realtimedir)/.config | \
+ awk '{print $$2}')
+else
+ HAVE_PI_MUTEX := $(shell sh $(realtimedir)/scripts/check_pi.sh)
+ HAVE_ROBUST_MUTEX:= $(shell sh $(realtimedir)/scripts/check_robust.sh)
+ dummy := $(shell echo "HAVE_PI_MUTEX $(HAVE_PI_MUTEX)" > $(realtimedir)/.config; \
+ echo "HAVE_ROBUST_MUTEX $(HAVE_ROBUST_MUTEX)" >> $(realtimedir)/.config)
+endif
-CPPFLAGS += -I$(abs_top_srcdir)/testcases/realtime/include -D_GNU_SOURCE
+# Default stuff common to all testcases
+CPPFLAGS += -I$(realtimedir)/include -D_GNU_SOURCE
CFLAGS += -Wall
-LDLIBS += -lrealtime -lpthread -lrt -lm
+LDLIBS += -L$(realtimedir)/lib -lrealtime -lpthread -lrt -lm
+
Index: ltp.tmp/testcases/realtime/func/pi-tests/Makefile
===================================================================
--- ltp.tmp.orig/testcases/realtime/func/pi-tests/Makefile 2009-10-22 21:19:51.000000000 +0530
+++ ltp.tmp/testcases/realtime/func/pi-tests/Makefile 2009-10-22 21:43:33.000000000 +0530
@@ -24,4 +24,19 @@
include $(top_srcdir)/include/mk/env_pre.mk
include $(abs_srcdir)/../../config.mk
+
+TARGETS = testpi-0
+
+ifeq ($(HAVE_PI_MUTEX), yes)
+ TARGETS += testpi-1 testpi-2 testpi-4 testpi-5 testpi-7
+endif
+
+ifeq ($(HAVE_ROBUST_MUTEX), yes)
+ TARGETS += testpi-6 sbrk_mutex
+endif
+
+MAKE_TARGETS = $(TARGETS)
+CLEAN_TARGETS = $(TARGETS)
+
include $(top_srcdir)/include/mk/generic_leaf_target.mk
+
Index: ltp.tmp/testcases/realtime/perf/Makefile
===================================================================
--- ltp.tmp.orig/testcases/realtime/perf/Makefile 2009-10-22 22:03:44.000000000 +0530
+++ ltp.tmp/testcases/realtime/perf/Makefile 2009-10-22 22:03:50.000000000 +0530
@@ -20,7 +20,7 @@
# Garrett Cooper, September 2009
#
-top_srcdir ?= ../../../..
+top_srcdir ?= ../../..
include $(top_srcdir)/include/mk/env_pre.mk
include $(abs_srcdir)/../config.mk
Index: ltp.tmp/testcases/realtime/stress/Makefile
===================================================================
--- ltp.tmp.orig/testcases/realtime/stress/Makefile 2009-10-22 22:04:15.000000000 +0530
+++ ltp.tmp/testcases/realtime/stress/Makefile 2009-10-22 22:04:28.000000000 +0530
@@ -20,7 +20,7 @@
# Garrett Cooper, September 2009
#
-top_srcdir ?= ../../../..
+top_srcdir ?= ../../..
include $(top_srcdir)/include/mk/env_pre.mk
include $(abs_srcdir)/../config.mk
Index: ltp.tmp/testcases/realtime/lib/libstats.c
===================================================================
--- ltp.tmp.orig/testcases/realtime/lib/libstats.c 2009-10-22 22:40:24.000000000 +0530
+++ ltp.tmp/testcases/realtime/lib/libstats.c 2009-10-23 11:31:49.000000000 +0530
@@ -75,7 +75,7 @@
{
int myindex = ++data->index;
if (myindex >= data->size) {
- debug(DBG_ERR, "Number of elements cannot be more than %d\n",
+ debug(DBG_ERR, "Number of elements cannot be more than %ld\n",
data->size);
data->index--;
return -1;
[-- Attachment #3: Type: text/plain, Size: 399 bytes --]
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
[-- Attachment #4: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LTP] [PATCH] realtime: fix broken build configuration files and warnings
2009-10-23 12:16 [LTP] [PATCH] realtime: fix broken build configuration files and warnings gowrishankar
@ 2009-10-23 15:44 ` Garrett Cooper
2009-10-23 21:50 ` Garrett Cooper
0 siblings, 1 reply; 6+ messages in thread
From: Garrett Cooper @ 2009-10-23 15:44 UTC (permalink / raw)
To: gowrishankar; +Cc: ltp-list
On Fri, Oct 23, 2009 at 5:16 AM, gowrishankar
<gomuthuk@linux.vnet.ibm.com> wrote:
> Hi Subrata,
> Please accept the patch below.
>
> Thanks,
> Gowri
I'll get back to you on this in a day Gowri... there are some
things I wanted to note.
Thanks,
-Garrett
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LTP] [PATCH] realtime: fix broken build configuration files and warnings
2009-10-23 15:44 ` Garrett Cooper
@ 2009-10-23 21:50 ` Garrett Cooper
2009-10-25 10:42 ` Garrett Cooper
0 siblings, 1 reply; 6+ messages in thread
From: Garrett Cooper @ 2009-10-23 21:50 UTC (permalink / raw)
To: gowrishankar; +Cc: ltp-list
[-- Attachment #1: Type: text/plain, Size: 2868 bytes --]
On Fri, Oct 23, 2009 at 8:44 AM, Garrett Cooper <yanegomi@gmail.com> wrote:
> On Fri, Oct 23, 2009 at 5:16 AM, gowrishankar
> <gomuthuk@linux.vnet.ibm.com> wrote:
>> Hi Subrata,
>> Please accept the patch below.
>>
>> Thanks,
>> Gowri
>
> I'll get back to you on this in a day Gowri... there are some
> things I wanted to note.
Hi Gowri,
I've reviewed the changes and checked in the ones that were OK,
and definitely needed to be fixed. There are a few items that I'm
unsure about with your proposed changes in the Makefiles that need to
be discussed:
1. I'm trying to make sure that out-of-build-tree functionality isn't
broken. In order to do that, as you see I had to use abs_builddir and
abs_srcdir, instead of just realtimedir.
2. config.mk shouldn't be included by lib/Makefile -- otherwise I have
to add LDLIBS += -lrealtime to all Makefiles that require that
library. So by virtue of laziness and keeping things common, it's best
just to add the required variables and includes in lib/Makefile.
This patch has been attached as realtime-makefile-fixes.diff.
Now, for the other part that I don't agree with 100%, but I agree
needs fixing:
Index: func/pi-tests/Makefile
===================================================================
RCS file: /cvsroot/ltp/ltp/testcases/realtime/func/pi-tests/Makefile,v
retrieving revision 1.2
diff -u -r1.2 Makefile
--- func/pi-tests/Makefile 9 Oct 2009 17:56:07 -0000 1.2
+++ func/pi-tests/Makefile 23 Oct 2009 21:36:02 -0000
@@ -24,4 +24,15 @@
include $(top_srcdir)/include/mk/env_pre.mk
include $(abs_srcdir)/../../config.mk
+
+MAKE_TARGETS := testpi-0
+
+ifeq ($(HAVE_PI_MUTEX), yes)
+MAKE_TARGETS += testpi-1 testpi-2 testpi-4 testpi-5 testpi-7
+endif
+
+ifeq ($(HAVE_ROBUST_MUTEX), yes)
+MAKE_TARGETS += testpi-6 sbrk_mutex
+endif
+
I agree that these should be toggable or built appropriate to
whether or not the system has this kind of functionality. The method
used to determine whether or not a system has this functionality is
questionable though, and I believe all of this can be established
through additional autoconf tests added to the $(abs_top_srcdir)/m4 --
do you agree with this?
Is the realtime test suite this made available as a separate
package outside of LTP in-house at IBM, or is it strictly available
with LTP?
Once these build integration issues are resolved, should it be
enabled by default, or still remain an optional package to build and
execute?
Should this component have a runtest file as well so it can be
integrated into the execution portion of LTP?
Finally, I also discovered some QA issues with rt-migrate.c (diff
attached as well); I patterned the code to match the other tests. Do
you agree with the fixes?
Thanks!
-Garrett
[-- Attachment #2: realtime-makefile-fixes.diff --]
[-- Type: application/octet-stream, Size: 1394 bytes --]
Index: config.mk
===================================================================
RCS file: /cvsroot/ltp/ltp/testcases/realtime/config.mk,v
retrieving revision 1.8
diff -u -r1.8 config.mk
--- config.mk 9 Oct 2009 17:56:07 -0000 1.8
+++ config.mk 23 Oct 2009 21:29:21 -0000
@@ -22,7 +22,13 @@
# Default stuff common to all testcases
+#
+# THIS IS NOT TO BE INCLUDED WITH lib!!!
-CPPFLAGS += -I$(abs_top_srcdir)/testcases/realtime/include -D_GNU_SOURCE
-CFLAGS += -Wall
-LDLIBS += -lrealtime -lpthread -lrt -lm
+realtime_builddir := $(abs_top_builddir)/testcases/realtime
+realtime_srcdir := $(abs_top_srcdir)/testcases/realtime
+
+CPPFLAGS += -I$(realtime_srcdir)/include
+CFLAGS += -D_GNU_SOURCE
+LDLIBS += -lrealtime -lpthread -lrt -lm
+LDFLAGS += -L$(realtime_builddir)/lib
Index: lib/Makefile
===================================================================
RCS file: /cvsroot/ltp/ltp/testcases/realtime/lib/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- lib/Makefile 9 Oct 2009 17:56:08 -0000 1.4
+++ lib/Makefile 23 Oct 2009 21:29:21 -0000
@@ -24,6 +24,12 @@
include $(top_srcdir)/include/mk/env_pre.mk
+CPPFLAGS += -I$(abs_srcdir)/../include
+
+CFLAGS += -D_GNU_SOURCE
+
+LDLIBS += -lrealtime -lpthread -lrt -lm
+
LIB := librealtime.a
-include $(top_srcdir)/include/mk/generic_leaf_target.mk
+include $(top_srcdir)/include/mk/lib.mk
[-- Attachment #3: realtime-rt-migrate-fixes.diff --]
[-- Type: application/octet-stream, Size: 2321 bytes --]
Index: func/rt-migrate/rt-migrate.c
===================================================================
RCS file: /cvsroot/ltp/ltp/testcases/realtime/func/rt-migrate/rt-migrate.c,v
retrieving revision 1.1
diff -u -r1.1 rt-migrate.c
--- func/rt-migrate/rt-migrate.c 7 Sep 2009 08:59:10 -0000 1.1
+++ func/rt-migrate/rt-migrate.c 23 Oct 2009 21:29:55 -0000
@@ -46,7 +46,9 @@
* testcases by Kiran Prakash
*
*/
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include <stdio.h>
#ifndef __USE_XOPEN2K
# define __USE_XOPEN2K
@@ -116,7 +118,13 @@
n = vsnprintf(buff, BUFSIZ, fmt, ap);
va_end(ap);
- write(mark_fd, buff, n);
+ /*
+ * This doesn't return any valid vs invalid exit codes, so printing out
+ * a perror to warn the end-user of an issue is sufficient.
+ */
+ if (write(mark_fd, buff, n) < 0) {
+ perror("write");
+ }
}
#define INTERVAL 100ULL * NS_PER_MS
@@ -185,21 +193,35 @@
);
}
-static void parse_args(int c, char *v)
-{
- switch (c) {
- case 'a': prio_start = atoi(v); break;
- case 'r':
- run_interval = atoi(v);
- break;
- case 't': interval = atoi(v); break;
- case 'l': nr_runs = atoi(v); break;
- case 'e': max_err = atoi(v) * NS_PER_US; break;
- case '?':
- case 'h':
- usage();
- exit(0);
- }
+/*
+int rt_init(const char *options, int (*parse_arg)(int option, char *value),
+ int argc, char *argv[]);
+ */
+static int parse_args(int c, char *v)
+{
+ int handled = 1;
+ switch (c) {
+ case 'a':
+ prio_start = atoi(v);
+ break;
+ case 'r':
+ run_interval = atoi(v);
+ break;
+ case 't':
+ interval = atoi(v);
+ break;
+ case 'l':
+ nr_runs = atoi(v);
+ break;
+ case 'e':
+ max_err = atoi(v) * NS_PER_US;
+ break;
+ case '?':
+ case 'h':
+ usage();
+ handled = 0;
+ }
+ return handled;
}
static void record_time(int id, unsigned long long time, unsigned long l)
@@ -247,12 +269,12 @@
for (i = 0; i < nr_runs; i++) {
printf("%4d: ", i);
for (t = 0; t < nr_tasks; t++)
- printf("%6lld ", intervals[t].records[i].y);
+ printf("%6ld ", intervals[t].records[i].y);
printf("\n");
printf(" len: ");
for (t = 0; t < nr_tasks; t++)
- printf("%6lld ", intervals_length[t].records[i].y);
+ printf("%6ld ", intervals_length[t].records[i].y);
printf("\n");
printf(" loops: ");
[-- Attachment #4: Type: text/plain, Size: 399 bytes --]
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
[-- Attachment #5: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LTP] [PATCH] realtime: fix broken build configuration files and warnings
2009-10-23 21:50 ` Garrett Cooper
@ 2009-10-25 10:42 ` Garrett Cooper
2009-10-26 12:20 ` gowrishankar
0 siblings, 1 reply; 6+ messages in thread
From: Garrett Cooper @ 2009-10-25 10:42 UTC (permalink / raw)
To: gowrishankar; +Cc: ltp-list
On Fri, Oct 23, 2009 at 2:50 PM, Garrett Cooper <yanegomi@gmail.com> wrote:
> On Fri, Oct 23, 2009 at 8:44 AM, Garrett Cooper <yanegomi@gmail.com> wrote:
>> On Fri, Oct 23, 2009 at 5:16 AM, gowrishankar
>> <gomuthuk@linux.vnet.ibm.com> wrote:
>>> Hi Subrata,
>>> Please accept the patch below.
>>>
>>> Thanks,
>>> Gowri
>>
>> I'll get back to you on this in a day Gowri... there are some
>> things I wanted to note.
>
> Hi Gowri,
> I've reviewed the changes and checked in the ones that were OK,
> and definitely needed to be fixed. There are a few items that I'm
> unsure about with your proposed changes in the Makefiles that need to
> be discussed:
> 1. I'm trying to make sure that out-of-build-tree functionality isn't
> broken. In order to do that, as you see I had to use abs_builddir and
> abs_srcdir, instead of just realtimedir.
> 2. config.mk shouldn't be included by lib/Makefile -- otherwise I have
> to add LDLIBS += -lrealtime to all Makefiles that require that
> library. So by virtue of laziness and keeping things common, it's best
> just to add the required variables and includes in lib/Makefile.
> This patch has been attached as realtime-makefile-fixes.diff.
> Now, for the other part that I don't agree with 100%, but I agree
> needs fixing:
>
> Index: func/pi-tests/Makefile
> ===================================================================
> RCS file: /cvsroot/ltp/ltp/testcases/realtime/func/pi-tests/Makefile,v
> retrieving revision 1.2
> diff -u -r1.2 Makefile
> --- func/pi-tests/Makefile 9 Oct 2009 17:56:07 -0000 1.2
> +++ func/pi-tests/Makefile 23 Oct 2009 21:36:02 -0000
> @@ -24,4 +24,15 @@
>
> include $(top_srcdir)/include/mk/env_pre.mk
> include $(abs_srcdir)/../../config.mk
> +
> +MAKE_TARGETS := testpi-0
> +
> +ifeq ($(HAVE_PI_MUTEX), yes)
> +MAKE_TARGETS += testpi-1 testpi-2 testpi-4 testpi-5 testpi-7
> +endif
> +
> +ifeq ($(HAVE_ROBUST_MUTEX), yes)
> +MAKE_TARGETS += testpi-6 sbrk_mutex
> +endif
> +
>
> I agree that these should be toggable or built appropriate to
> whether or not the system has this kind of functionality. The method
> used to determine whether or not a system has this functionality is
> questionable though, and I believe all of this can be established
> through additional autoconf tests added to the $(abs_top_srcdir)/m4 --
> do you agree with this?
> Is the realtime test suite this made available as a separate
> package outside of LTP in-house at IBM, or is it strictly available
> with LTP?
> Once these build integration issues are resolved, should it be
> enabled by default, or still remain an optional package to build and
> execute?
> Should this component have a runtest file as well so it can be
> integrated into the execution portion of LTP?
> Finally, I also discovered some QA issues with rt-migrate.c (diff
> attached as well); I patterned the code to match the other tests. Do
> you agree with the fixes?
Gowri,
I read more about the project and determined what the scope was,
so I created and integrated testcases/realtime into the rest of the
autoconf infrastructure, but as a subcomponent in LTP.
So if you check out LTP from HEAD as of a few moments ago, you'll
discover that all of the issues you reported have been fixed (AFAIK)
and all of the unnecessary autoconf-like scripts and additional
autoconf-related files and directories have been cleaned out.
The directions for compiling realtime by itself are the same as
the rest of LTP:
make autotools
./configure
make all
make install
This is only required when doing this as a subcomponent, as this
is already handled with the same commands above issued from the
top-level LTP source directory.
HTH,
-Garrett
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LTP] [PATCH] realtime: fix broken build configuration files and warnings
2009-10-25 10:42 ` Garrett Cooper
@ 2009-10-26 12:20 ` gowrishankar
2009-10-26 20:22 ` Garrett Cooper
0 siblings, 1 reply; 6+ messages in thread
From: gowrishankar @ 2009-10-26 12:20 UTC (permalink / raw)
To: Garrett Cooper; +Cc: ltp-list
Garrett Cooper wrote:
> On Fri, Oct 23, 2009 at 2:50 PM, Garrett Cooper <yanegomi@gmail.com> wrote:
>> On Fri, Oct 23, 2009 at 8:44 AM, Garrett Cooper <yanegomi@gmail.com> wrote:
>>> On Fri, Oct 23, 2009 at 5:16 AM, gowrishankar
>>> <gomuthuk@linux.vnet.ibm.com> wrote:
>>>> Hi Subrata,
>>>> Please accept the patch below.
>>>>
>>>> Thanks,
>>>> Gowri
>>> I'll get back to you on this in a day Gowri... there are some
>>> things I wanted to note.
>> Hi Gowri,
>> I've reviewed the changes and checked in the ones that were OK,
>> and definitely needed to be fixed. There are a few items that I'm
>> unsure about with your proposed changes in the Makefiles that need to
>> be discussed:
>> 1. I'm trying to make sure that out-of-build-tree functionality isn't
>> broken. In order to do that, as you see I had to use abs_builddir and
>> abs_srcdir, instead of just realtimedir.
>> 2. config.mk shouldn't be included by lib/Makefile -- otherwise I have
>> to add LDLIBS += -lrealtime to all Makefiles that require that
>> library. So by virtue of laziness and keeping things common, it's best
>> just to add the required variables and includes in lib/Makefile.
>> This patch has been attached as realtime-makefile-fixes.diff.
>> Now, for the other part that I don't agree with 100%, but I agree
>> needs fixing:
>>
>> Index: func/pi-tests/Makefile
>> ===================================================================
>> RCS file: /cvsroot/ltp/ltp/testcases/realtime/func/pi-tests/Makefile,v
>> retrieving revision 1.2
>> diff -u -r1.2 Makefile
>> --- func/pi-tests/Makefile 9 Oct 2009 17:56:07 -0000 1.2
>> +++ func/pi-tests/Makefile 23 Oct 2009 21:36:02 -0000
>> @@ -24,4 +24,15 @@
>>
>> include $(top_srcdir)/include/mk/env_pre.mk
>> include $(abs_srcdir)/../../config.mk
>> +
>> +MAKE_TARGETS := testpi-0
>> +
>> +ifeq ($(HAVE_PI_MUTEX), yes)
>> +MAKE_TARGETS += testpi-1 testpi-2 testpi-4 testpi-5 testpi-7
>> +endif
>> +
>> +ifeq ($(HAVE_ROBUST_MUTEX), yes)
>> +MAKE_TARGETS += testpi-6 sbrk_mutex
>> +endif
>> +
>>
>> I agree that these should be toggable or built appropriate to
>> whether or not the system has this kind of functionality. The method
>> used to determine whether or not a system has this functionality is
>> questionable though, and I believe all of this can be established
>> through additional autoconf tests added to the $(abs_top_srcdir)/m4 --
>> do you agree with this?
>> Is the realtime test suite this made available as a separate
>> package outside of LTP in-house at IBM, or is it strictly available
>> with LTP?
>> Once these build integration issues are resolved, should it be
>> enabled by default, or still remain an optional package to build and
>> execute?
>> Should this component have a runtest file as well so it can be
>> integrated into the execution portion of LTP?
>> Finally, I also discovered some QA issues with rt-migrate.c (diff
>> attached as well); I patterned the code to match the other tests. Do
>> you agree with the fixes?
>
> Gowri,
> I read more about the project and determined what the scope was,
> so I created and integrated testcases/realtime into the rest of the
> autoconf infrastructure, but as a subcomponent in LTP.
> So if you check out LTP from HEAD as of a few moments ago, you'll
> discover that all of the issues you reported have been fixed (AFAIK)
> and all of the unnecessary autoconf-like scripts and additional
> autoconf-related files and directories have been cleaned out.
> The directions for compiling realtime by itself are the same as
> the rest of LTP:
>
Garrett,
First of all, thanks a lot for assisting me in getting RT tests neatly
built. Seems like, you are missing macro files:
aclocal: couldn't open directory `/test/ltp/testcases/realtime/m4': No such file
or directory
Can you please checkin those as well.
Thanks,
Gowri
> make autotools
> ./configure
> make all
> make install
>
> This is only required when doing this as a subcomponent, as this
> is already handled with the same commands above issued from the
> top-level LTP source directory.
> HTH,
> -Garrett
>
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LTP] [PATCH] realtime: fix broken build configuration files and warnings
2009-10-26 12:20 ` gowrishankar
@ 2009-10-26 20:22 ` Garrett Cooper
0 siblings, 0 replies; 6+ messages in thread
From: Garrett Cooper @ 2009-10-26 20:22 UTC (permalink / raw)
To: gowrishankar; +Cc: ltp-list
On Mon, Oct 26, 2009 at 5:20 AM, gowrishankar
<gomuthuk@linux.vnet.ibm.com> wrote:
> Garrett Cooper wrote:
>>
>> On Fri, Oct 23, 2009 at 2:50 PM, Garrett Cooper <yanegomi@gmail.com>
>> wrote:
>>>
>>> On Fri, Oct 23, 2009 at 8:44 AM, Garrett Cooper <yanegomi@gmail.com>
>>> wrote:
>>>>
>>>> On Fri, Oct 23, 2009 at 5:16 AM, gowrishankar
>>>> <gomuthuk@linux.vnet.ibm.com> wrote:
>>>>>
>>>>> Hi Subrata,
>>>>> Please accept the patch below.
>>>>>
>>>>> Thanks,
>>>>> Gowri
>>>>
>>>> I'll get back to you on this in a day Gowri... there are some
>>>> things I wanted to note.
>>>
>>> Hi Gowri,
>>> I've reviewed the changes and checked in the ones that were OK,
>>> and definitely needed to be fixed. There are a few items that I'm
>>> unsure about with your proposed changes in the Makefiles that need to
>>> be discussed:
>>> 1. I'm trying to make sure that out-of-build-tree functionality isn't
>>> broken. In order to do that, as you see I had to use abs_builddir and
>>> abs_srcdir, instead of just realtimedir.
>>> 2. config.mk shouldn't be included by lib/Makefile -- otherwise I have
>>> to add LDLIBS += -lrealtime to all Makefiles that require that
>>> library. So by virtue of laziness and keeping things common, it's best
>>> just to add the required variables and includes in lib/Makefile.
>>> This patch has been attached as realtime-makefile-fixes.diff.
>>> Now, for the other part that I don't agree with 100%, but I agree
>>> needs fixing:
>>>
>>> Index: func/pi-tests/Makefile
>>> ===================================================================
>>> RCS file: /cvsroot/ltp/ltp/testcases/realtime/func/pi-tests/Makefile,v
>>> retrieving revision 1.2
>>> diff -u -r1.2 Makefile
>>> --- func/pi-tests/Makefile 9 Oct 2009 17:56:07 -0000 1.2
>>> +++ func/pi-tests/Makefile 23 Oct 2009 21:36:02 -0000
>>> @@ -24,4 +24,15 @@
>>>
>>> include $(top_srcdir)/include/mk/env_pre.mk
>>> include $(abs_srcdir)/../../config.mk
>>> +
>>> +MAKE_TARGETS := testpi-0
>>> +
>>> +ifeq ($(HAVE_PI_MUTEX), yes)
>>> +MAKE_TARGETS += testpi-1 testpi-2 testpi-4 testpi-5 testpi-7
>>> +endif
>>> +
>>> +ifeq ($(HAVE_ROBUST_MUTEX), yes)
>>> +MAKE_TARGETS += testpi-6 sbrk_mutex
>>> +endif
>>> +
>>>
>>> I agree that these should be toggable or built appropriate to
>>> whether or not the system has this kind of functionality. The method
>>> used to determine whether or not a system has this functionality is
>>> questionable though, and I believe all of this can be established
>>> through additional autoconf tests added to the $(abs_top_srcdir)/m4 --
>>> do you agree with this?
>>> Is the realtime test suite this made available as a separate
>>> package outside of LTP in-house at IBM, or is it strictly available
>>> with LTP?
>>> Once these build integration issues are resolved, should it be
>>> enabled by default, or still remain an optional package to build and
>>> execute?
>>> Should this component have a runtest file as well so it can be
>>> integrated into the execution portion of LTP?
>>> Finally, I also discovered some QA issues with rt-migrate.c (diff
>>> attached as well); I patterned the code to match the other tests. Do
>>> you agree with the fixes?
>>
>> Gowri,
>> I read more about the project and determined what the scope was,
>> so I created and integrated testcases/realtime into the rest of the
>> autoconf infrastructure, but as a subcomponent in LTP.
>> So if you check out LTP from HEAD as of a few moments ago, you'll
>> discover that all of the issues you reported have been fixed (AFAIK)
>> and all of the unnecessary autoconf-like scripts and additional
>> autoconf-related files and directories have been cleaned out.
>> The directions for compiling realtime by itself are the same as
>> the rest of LTP:
>>
> Garrett,
> First of all, thanks a lot for assisting me in getting RT tests neatly
> built. Seems like, you are missing macro files:
>
> aclocal: couldn't open directory `/test/ltp/testcases/realtime/m4': No such
> file or directory
>
> Can you please checkin those as well.
Hi Gowri,
The macros and the files are there already -- configure just
hasn't been run yet, because config.mk doesn't exist. I'll try
tweaking some stuff a bit and will get back in ~30 mins.
Thanks,
-Garrett
>> make autotools
>> ./configure
>> make all
>> make install
>>
>> This is only required when doing this as a subcomponent, as this
>> is already handled with the same commands above issued from the
>> top-level LTP source directory.
>> HTH,
>> -Garrett
>>
>
>
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2009-10-26 20:29 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-23 12:16 [LTP] [PATCH] realtime: fix broken build configuration files and warnings gowrishankar
2009-10-23 15:44 ` Garrett Cooper
2009-10-23 21:50 ` Garrett Cooper
2009-10-25 10:42 ` Garrett Cooper
2009-10-26 12:20 ` gowrishankar
2009-10-26 20:22 ` Garrett Cooper
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox