[PATCH 23/31] build: Merge rtems/Makefile.am

Sebastian Huber sebastian.huber at embedded-brains.de
Mon Oct 8 10:43:25 UTC 2018


---
 cpukit/Makefile.am        | 159 +++++++++++++++++++++++++++++++++++-
 cpukit/configure.ac       |   1 -
 cpukit/rtems/Makefile.am  | 202 ----------------------------------------------
 cpukit/wrapup/Makefile.am |   1 -
 4 files changed, 158 insertions(+), 205 deletions(-)
 delete mode 100644 cpukit/rtems/Makefile.am

diff --git a/cpukit/Makefile.am b/cpukit/Makefile.am
index 13ea35a5eb..baaceb0cc4 100644
--- a/cpukit/Makefile.am
+++ b/cpukit/Makefile.am
@@ -484,6 +484,151 @@ libcpukit_a_SOURCES += posix/src/rwlockattrinit.c
 libcpukit_a_SOURCES += posix/src/rwlockattrsetpshared.c
 libcpukit_a_SOURCES += posix/src/sched_getprioritymin.c
 libcpukit_a_SOURCES += posix/src/sched_getprioritymax.c
+libcpukit_a_SOURCES += rtems/src/barrier.c
+libcpukit_a_SOURCES += rtems/src/barriercreate.c
+libcpukit_a_SOURCES += rtems/src/barrierdelete.c
+libcpukit_a_SOURCES += rtems/src/barrierident.c
+libcpukit_a_SOURCES += rtems/src/barrierrelease.c
+libcpukit_a_SOURCES += rtems/src/barrierwait.c
+libcpukit_a_SOURCES += rtems/src/clockgetsecondssinceepoch.c
+libcpukit_a_SOURCES += rtems/src/clockgettickspersecond.c
+libcpukit_a_SOURCES += rtems/src/clockgettod.c
+libcpukit_a_SOURCES += rtems/src/clockgettodtimeval.c
+libcpukit_a_SOURCES += rtems/src/clockgetuptime.c
+libcpukit_a_SOURCES += rtems/src/clockgetuptimenanoseconds.c
+libcpukit_a_SOURCES += rtems/src/clockgetuptimetimeval.c
+libcpukit_a_SOURCES += rtems/src/clockset.c
+libcpukit_a_SOURCES += rtems/src/clocktick.c
+libcpukit_a_SOURCES += rtems/src/clocktodtoseconds.c
+libcpukit_a_SOURCES += rtems/src/clocktodvalidate.c
+libcpukit_a_SOURCES += rtems/src/dpmem.c
+libcpukit_a_SOURCES += rtems/src/dpmemcreate.c
+libcpukit_a_SOURCES += rtems/src/dpmemdelete.c
+libcpukit_a_SOURCES += rtems/src/dpmemexternal2internal.c
+libcpukit_a_SOURCES += rtems/src/dpmemident.c
+libcpukit_a_SOURCES += rtems/src/dpmeminternal2external.c
+libcpukit_a_SOURCES += rtems/src/eventreceive.c
+libcpukit_a_SOURCES += rtems/src/eventseize.c
+libcpukit_a_SOURCES += rtems/src/eventsend.c
+libcpukit_a_SOURCES += rtems/src/eventsurrender.c
+libcpukit_a_SOURCES += rtems/src/getcurrentprocessor.c
+libcpukit_a_SOURCES += rtems/src/getprocessorcount.c
+libcpukit_a_SOURCES += rtems/src/intrbody.c
+libcpukit_a_SOURCES += rtems/src/intrcatch.c
+libcpukit_a_SOURCES += rtems/src/modes.c
+libcpukit_a_SOURCES += rtems/src/msg.c
+libcpukit_a_SOURCES += rtems/src/msgqbroadcast.c
+libcpukit_a_SOURCES += rtems/src/msgqcreate.c
+libcpukit_a_SOURCES += rtems/src/msgqdelete.c
+libcpukit_a_SOURCES += rtems/src/msgqflush.c
+libcpukit_a_SOURCES += rtems/src/msgqgetnumberpending.c
+libcpukit_a_SOURCES += rtems/src/msgqident.c
+libcpukit_a_SOURCES += rtems/src/msgqreceive.c
+libcpukit_a_SOURCES += rtems/src/msgqsend.c
+libcpukit_a_SOURCES += rtems/src/msgqurgent.c
+libcpukit_a_SOURCES += rtems/src/part.c
+libcpukit_a_SOURCES += rtems/src/partcreate.c
+libcpukit_a_SOURCES += rtems/src/partdelete.c
+libcpukit_a_SOURCES += rtems/src/partgetbuffer.c
+libcpukit_a_SOURCES += rtems/src/partident.c
+libcpukit_a_SOURCES += rtems/src/partreturnbuffer.c
+libcpukit_a_SOURCES += rtems/src/ratemon.c
+libcpukit_a_SOURCES += rtems/src/ratemoncancel.c
+libcpukit_a_SOURCES += rtems/src/ratemoncreate.c
+libcpukit_a_SOURCES += rtems/src/ratemondelete.c
+libcpukit_a_SOURCES += rtems/src/ratemongetstatistics.c
+libcpukit_a_SOURCES += rtems/src/ratemongetstatus.c
+libcpukit_a_SOURCES += rtems/src/ratemonident.c
+libcpukit_a_SOURCES += rtems/src/ratemonperiod.c
+libcpukit_a_SOURCES += rtems/src/ratemonreportstatistics.c
+libcpukit_a_SOURCES += rtems/src/ratemonresetall.c
+libcpukit_a_SOURCES += rtems/src/ratemonresetstatistics.c
+libcpukit_a_SOURCES += rtems/src/ratemontimeout.c
+libcpukit_a_SOURCES += rtems/src/region.c
+libcpukit_a_SOURCES += rtems/src/regioncreate.c
+libcpukit_a_SOURCES += rtems/src/regiondelete.c
+libcpukit_a_SOURCES += rtems/src/regionextend.c
+libcpukit_a_SOURCES += rtems/src/regiongetfreeinfo.c
+libcpukit_a_SOURCES += rtems/src/regiongetinfo.c
+libcpukit_a_SOURCES += rtems/src/regiongetsegment.c
+libcpukit_a_SOURCES += rtems/src/regiongetsegmentsize.c
+libcpukit_a_SOURCES += rtems/src/regionident.c
+libcpukit_a_SOURCES += rtems/src/regionprocessqueue.c
+libcpukit_a_SOURCES += rtems/src/regionresizesegment.c
+libcpukit_a_SOURCES += rtems/src/regionreturnsegment.c
+libcpukit_a_SOURCES += rtems/src/rtemsbuildid.c
+libcpukit_a_SOURCES += rtems/src/rtemsbuildname.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectapimaximumclass.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectapiminimumclass.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectgetapiclassname.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectgetapiname.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectgetclassicname.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectgetclassinfo.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectgetname.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectidapimaximum.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectidapiminimum.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectidgetapi.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectidgetclass.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectidgetindex.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectidgetnode.c
+libcpukit_a_SOURCES += rtems/src/rtemsobjectsetname.c
+libcpukit_a_SOURCES += rtems/src/rtemstimer.c
+libcpukit_a_SOURCES += rtems/src/scheduleraddprocessor.c
+libcpukit_a_SOURCES += rtems/src/schedulergetprocessorset.c
+libcpukit_a_SOURCES += rtems/src/scheduleridentbyprocessor.c
+libcpukit_a_SOURCES += rtems/src/scheduleridentbyprocessorset.c
+libcpukit_a_SOURCES += rtems/src/schedulerident.c
+libcpukit_a_SOURCES += rtems/src/schedulerremoveprocessor.c
+libcpukit_a_SOURCES += rtems/src/sem.c
+libcpukit_a_SOURCES += rtems/src/semcreate.c
+libcpukit_a_SOURCES += rtems/src/semdelete.c
+libcpukit_a_SOURCES += rtems/src/semflush.c
+libcpukit_a_SOURCES += rtems/src/semident.c
+libcpukit_a_SOURCES += rtems/src/semobtain.c
+libcpukit_a_SOURCES += rtems/src/semrelease.c
+libcpukit_a_SOURCES += rtems/src/semsetpriority.c
+libcpukit_a_SOURCES += rtems/src/signalcatch.c
+libcpukit_a_SOURCES += rtems/src/signalsend.c
+libcpukit_a_SOURCES += rtems/src/status.c
+libcpukit_a_SOURCES += rtems/src/statustext.c
+libcpukit_a_SOURCES += rtems/src/statustoerrno.c
+libcpukit_a_SOURCES += rtems/src/systemeventreceive.c
+libcpukit_a_SOURCES += rtems/src/systemeventsend.c
+libcpukit_a_SOURCES += rtems/src/taskcreate.c
+libcpukit_a_SOURCES += rtems/src/taskdelete.c
+libcpukit_a_SOURCES += rtems/src/taskexit.c
+libcpukit_a_SOURCES += rtems/src/taskgetaffinity.c
+libcpukit_a_SOURCES += rtems/src/taskgetpriority.c
+libcpukit_a_SOURCES += rtems/src/taskgetscheduler.c
+libcpukit_a_SOURCES += rtems/src/taskident.c
+libcpukit_a_SOURCES += rtems/src/taskinitusers.c
+libcpukit_a_SOURCES += rtems/src/taskissuspended.c
+libcpukit_a_SOURCES += rtems/src/taskiterate.c
+libcpukit_a_SOURCES += rtems/src/taskmode.c
+libcpukit_a_SOURCES += rtems/src/taskrestart.c
+libcpukit_a_SOURCES += rtems/src/taskresume.c
+libcpukit_a_SOURCES += rtems/src/tasks.c
+libcpukit_a_SOURCES += rtems/src/taskself.c
+libcpukit_a_SOURCES += rtems/src/tasksetaffinity.c
+libcpukit_a_SOURCES += rtems/src/tasksetpriority.c
+libcpukit_a_SOURCES += rtems/src/tasksetscheduler.c
+libcpukit_a_SOURCES += rtems/src/taskstart.c
+libcpukit_a_SOURCES += rtems/src/tasksuspend.c
+libcpukit_a_SOURCES += rtems/src/taskwakeafter.c
+libcpukit_a_SOURCES += rtems/src/taskwakewhen.c
+libcpukit_a_SOURCES += rtems/src/timercancel.c
+libcpukit_a_SOURCES += rtems/src/timercreate.c
+libcpukit_a_SOURCES += rtems/src/timerdelete.c
+libcpukit_a_SOURCES += rtems/src/timerfireafter.c
+libcpukit_a_SOURCES += rtems/src/timerfirewhen.c
+libcpukit_a_SOURCES += rtems/src/timergetinfo.c
+libcpukit_a_SOURCES += rtems/src/timerident.c
+libcpukit_a_SOURCES += rtems/src/timerreset.c
+libcpukit_a_SOURCES += rtems/src/timerserver.c
+libcpukit_a_SOURCES += rtems/src/timerserverfireafter.c
+libcpukit_a_SOURCES += rtems/src/timerserverfirewhen.c
+libcpukit_a_SOURCES += rtems/src/workspace.c
+libcpukit_a_SOURCES += rtems/src/workspacegreedy.c
 libcpukit_a_SOURCES += sapi/src/chainappendnotify.c
 libcpukit_a_SOURCES += sapi/src/chaingetnotify.c
 libcpukit_a_SOURCES += sapi/src/chaingetwait.c
@@ -522,6 +667,18 @@ libcpukit_a_SOURCES += sapi/src/sapirbtreeinsert.c
 libcpukit_a_SOURCES += sapi/src/tcsimpleinstall.c
 libcpukit_a_SOURCES += sapi/src/version.c
 
+if HAS_MP
+
+libcpukit_a_SOURCES += rtems/src/eventmp.c
+libcpukit_a_SOURCES += rtems/src/mp.c
+libcpukit_a_SOURCES += rtems/src/msgmp.c
+libcpukit_a_SOURCES += rtems/src/partmp.c
+libcpukit_a_SOURCES += rtems/src/semmp.c
+libcpukit_a_SOURCES += rtems/src/signalmp.c
+libcpukit_a_SOURCES += rtems/src/taskmp.c
+
+endif
+
 if HAS_PTHREADS
 
 libcpukit_a_SOURCES += libstdthreads/thrd.c
@@ -842,7 +999,7 @@ $(top_srcdir)/sapi/src/version.c: version-vc-key.h
 all-local: generate-vc-key
 
 # librtemscpu
-_SUBDIRS = . score rtems
+_SUBDIRS = . score
 _SUBDIRS += libnetworking
 _SUBDIRS += libmisc
 _SUBDIRS += wrapup
diff --git a/cpukit/configure.ac b/cpukit/configure.ac
index 9bd11ff452..1d95926cb5 100644
--- a/cpukit/configure.ac
+++ b/cpukit/configure.ac
@@ -474,7 +474,6 @@ RTEMS_AMPOLISH3
 AC_CONFIG_FILES([
 Doxyfile
 Makefile
-rtems/Makefile
 score/Makefile
 score/cpu/Makefile
 score/cpu/arm/Makefile
diff --git a/cpukit/rtems/Makefile.am b/cpukit/rtems/Makefile.am
deleted file mode 100644
index 9a6f4a114c..0000000000
--- a/cpukit/rtems/Makefile.am
+++ /dev/null
@@ -1,202 +0,0 @@
-include $(top_srcdir)/automake/multilib.am
-include $(top_srcdir)/automake/compile.am
-
-noinst_LIBRARIES = librtems.a
-
-# include
-
-# include/rtems/rtems
-if HAS_MP
-## We only build multiprocessing related files if HAS_MP was defined
-endif
-
-## src
-librtems_a_SOURCES = src/rtemsbuildid.c
-librtems_a_SOURCES += src/rtemsbuildname.c
-librtems_a_SOURCES += src/rtemsobjectgetname.c
-librtems_a_SOURCES += src/rtemsobjectsetname.c
-librtems_a_SOURCES += src/rtemsobjectidapimaximum.c
-librtems_a_SOURCES += src/rtemsobjectidapiminimum.c
-librtems_a_SOURCES += src/rtemsobjectidgetapi.c
-librtems_a_SOURCES += src/rtemsobjectidgetclass.c
-librtems_a_SOURCES += src/rtemsobjectidgetindex.c
-librtems_a_SOURCES += src/rtemsobjectidgetnode.c
-librtems_a_SOURCES += src/rtemsobjectapiminimumclass.c
-librtems_a_SOURCES += src/rtemsobjectapimaximumclass.c
-librtems_a_SOURCES += src/rtemsobjectgetapiname.c
-librtems_a_SOURCES += src/rtemsobjectgetapiclassname.c
-librtems_a_SOURCES += src/rtemsobjectgetclassinfo.c
-librtems_a_SOURCES += src/rtemsobjectgetclassicname.c
-
-## TASK_C_FILES
-librtems_a_SOURCES += src/tasks.c
-librtems_a_SOURCES += src/taskcreate.c
-librtems_a_SOURCES += src/taskdelete.c
-librtems_a_SOURCES += src/taskexit.c
-librtems_a_SOURCES += src/taskgetaffinity.c
-librtems_a_SOURCES += src/taskgetpriority.c
-librtems_a_SOURCES += src/taskgetscheduler.c
-librtems_a_SOURCES += src/taskident.c
-librtems_a_SOURCES += src/taskinitusers.c
-librtems_a_SOURCES += src/taskissuspended.c
-librtems_a_SOURCES += src/taskiterate.c
-librtems_a_SOURCES += src/taskmode.c
-librtems_a_SOURCES += src/taskrestart.c
-librtems_a_SOURCES += src/taskresume.c
-librtems_a_SOURCES += src/taskself.c
-librtems_a_SOURCES += src/tasksetaffinity.c
-librtems_a_SOURCES += src/tasksetpriority.c
-librtems_a_SOURCES += src/tasksetscheduler.c
-librtems_a_SOURCES += src/taskstart.c
-librtems_a_SOURCES += src/tasksuspend.c
-librtems_a_SOURCES += src/taskwakeafter.c
-librtems_a_SOURCES += src/taskwakewhen.c
-librtems_a_SOURCES += src/scheduleraddprocessor.c
-librtems_a_SOURCES += src/schedulergetprocessorset.c
-librtems_a_SOURCES += src/schedulerident.c
-librtems_a_SOURCES += src/scheduleridentbyprocessor.c
-librtems_a_SOURCES += src/scheduleridentbyprocessorset.c
-librtems_a_SOURCES += src/schedulerremoveprocessor.c
-
-## RATEMON_C_FILES
-librtems_a_SOURCES += src/ratemon.c
-librtems_a_SOURCES += src/ratemoncancel.c
-librtems_a_SOURCES += src/ratemoncreate.c
-librtems_a_SOURCES += src/ratemondelete.c
-librtems_a_SOURCES += src/ratemongetstatus.c
-librtems_a_SOURCES += src/ratemongetstatistics.c
-librtems_a_SOURCES += src/ratemonresetstatistics.c
-librtems_a_SOURCES += src/ratemonresetall.c
-librtems_a_SOURCES += src/ratemonreportstatistics.c
-librtems_a_SOURCES += src/ratemonident.c
-librtems_a_SOURCES += src/ratemonperiod.c
-librtems_a_SOURCES += src/ratemontimeout.c
-
-## INTR_C_FILES
-librtems_a_SOURCES += src/intrbody.c
-librtems_a_SOURCES += src/intrcatch.c
-
-## BARRIER_C_FILES
-librtems_a_SOURCES += src/barrier.c
-librtems_a_SOURCES += src/barriercreate.c
-librtems_a_SOURCES += src/barrierdelete.c
-librtems_a_SOURCES += src/barrierident.c
-librtems_a_SOURCES += src/barrierrelease.c
-librtems_a_SOURCES += src/barrierwait.c
-
-## CLOCK_C_FILES
-librtems_a_SOURCES += src/clockgetsecondssinceepoch.c
-librtems_a_SOURCES += src/clockgettickspersecond.c
-librtems_a_SOURCES += src/clockgettod.c
-librtems_a_SOURCES += src/clockgettodtimeval.c
-librtems_a_SOURCES += src/clockgetuptime.c
-librtems_a_SOURCES += src/clockgetuptimetimeval.c
-librtems_a_SOURCES += src/clockgetuptimenanoseconds.c
-librtems_a_SOURCES += src/clockset.c
-librtems_a_SOURCES += src/clocktick.c
-librtems_a_SOURCES += src/clocktodtoseconds.c
-librtems_a_SOURCES += src/clocktodvalidate.c
-
-## TIMER_C_FILES
-librtems_a_SOURCES += src/rtemstimer.c
-librtems_a_SOURCES += src/timercancel.c
-librtems_a_SOURCES += src/timercreate.c
-librtems_a_SOURCES += src/timerdelete.c
-librtems_a_SOURCES += src/timerfireafter.c
-librtems_a_SOURCES += src/timerfirewhen.c
-librtems_a_SOURCES += src/timergetinfo.c
-librtems_a_SOURCES += src/timerident.c
-librtems_a_SOURCES += src/timerreset.c
-librtems_a_SOURCES += src/timerserver.c
-librtems_a_SOURCES += src/timerserverfireafter.c
-librtems_a_SOURCES += src/timerserverfirewhen.c
-
-## MESSAGE_QUEUE_C_FILES
-librtems_a_SOURCES += src/msg.c
-librtems_a_SOURCES += src/msgqbroadcast.c
-librtems_a_SOURCES += src/msgqcreate.c
-librtems_a_SOURCES += src/msgqdelete.c
-librtems_a_SOURCES += src/msgqflush.c
-librtems_a_SOURCES += src/msgqgetnumberpending.c
-librtems_a_SOURCES += src/msgqident.c
-librtems_a_SOURCES += src/msgqreceive.c
-librtems_a_SOURCES += src/msgqsend.c
-librtems_a_SOURCES += src/msgqurgent.c
-
-## SEMAPHORE_C_FILES
-librtems_a_SOURCES += src/sem.c
-librtems_a_SOURCES += src/semcreate.c
-librtems_a_SOURCES += src/semdelete.c
-librtems_a_SOURCES += src/semident.c
-librtems_a_SOURCES += src/semobtain.c
-librtems_a_SOURCES += src/semrelease.c
-librtems_a_SOURCES += src/semflush.c
-librtems_a_SOURCES += src/semsetpriority.c
-
-## EVENT_C_FILES
-librtems_a_SOURCES += src/eventreceive.c
-librtems_a_SOURCES += src/eventseize.c
-librtems_a_SOURCES += src/eventsend.c
-librtems_a_SOURCES += src/eventsurrender.c
-librtems_a_SOURCES += src/systemeventsend.c
-librtems_a_SOURCES += src/systemeventreceive.c
-
-## SIGNAL_C_FILES
-librtems_a_SOURCES += src/signalcatch.c
-librtems_a_SOURCES += src/signalsend.c
-
-## REGION_C_FILES
-librtems_a_SOURCES += src/region.c
-librtems_a_SOURCES += src/regioncreate.c
-librtems_a_SOURCES += src/regiondelete.c
-librtems_a_SOURCES += src/regionextend.c
-librtems_a_SOURCES += src/regiongetsegment.c
-librtems_a_SOURCES += src/regiongetsegmentsize.c
-librtems_a_SOURCES += src/regionident.c
-librtems_a_SOURCES += src/regionreturnsegment.c
-librtems_a_SOURCES += src/regiongetinfo.c
-librtems_a_SOURCES += src/regiongetfreeinfo.c
-librtems_a_SOURCES += src/regionresizesegment.c
-librtems_a_SOURCES += src/regionprocessqueue.c
-
-## PARTITION_C_FILES
-librtems_a_SOURCES += src/part.c
-librtems_a_SOURCES += src/partcreate.c
-librtems_a_SOURCES += src/partdelete.c
-librtems_a_SOURCES += src/partgetbuffer.c
-librtems_a_SOURCES += src/partident.c
-librtems_a_SOURCES += src/partreturnbuffer.c
-
-## DPMEM_C_FILES
-librtems_a_SOURCES += src/dpmem.c
-librtems_a_SOURCES += src/dpmemcreate.c
-librtems_a_SOURCES += src/dpmemdelete.c
-librtems_a_SOURCES += src/dpmemexternal2internal.c
-librtems_a_SOURCES += src/dpmemident.c
-librtems_a_SOURCES += src/dpmeminternal2external.c
-
-## WORKSPACE_FILES
-librtems_a_SOURCES += src/workspace.c
-librtems_a_SOURCES += src/workspacegreedy.c
-
-librtems_a_SOURCES += src/modes.c
-
-librtems_a_SOURCES += src/status.c
-librtems_a_SOURCES += src/statustext.c
-librtems_a_SOURCES += src/statustoerrno.c
-
-librtems_a_SOURCES += src/getcurrentprocessor.c
-librtems_a_SOURCES += src/getprocessorcount.c
-
-if HAS_MP
-# We only build multiprocessing related files if HAS_MP was defined
-librtems_a_SOURCES += src/eventmp.c
-librtems_a_SOURCES += src/mp.c
-librtems_a_SOURCES += src/msgmp.c
-librtems_a_SOURCES += src/partmp.c
-librtems_a_SOURCES += src/semmp.c
-librtems_a_SOURCES += src/signalmp.c
-librtems_a_SOURCES += src/taskmp.c
-endif
-
-include $(top_srcdir)/automake/local.am
diff --git a/cpukit/wrapup/Makefile.am b/cpukit/wrapup/Makefile.am
index e083592c1c..71c705c47f 100644
--- a/cpukit/wrapup/Makefile.am
+++ b/cpukit/wrapup/Makefile.am
@@ -16,7 +16,6 @@ TMP_LIBS =
 TMP_LIBS += ../score/cpu/@RTEMS_CPU@/libscorecpu.a
 TMP_LIBS += ../score/libscore.a
 TMP_LIBS += ../libcpukit.a
-TMP_LIBS += ../rtems/librtems.a
 
 TMP_LIBS += ../libmisc/libmonitor.a
 TMP_LIBS += ../libmisc/libuntar.a
-- 
2.16.4




More information about the devel mailing list