source: rtems/cpukit/score/Makefile.am @ e5ae7c92

4.115
Last change on this file since e5ae7c92 was e5ae7c92, checked in by Sebastian Huber <sebastian.huber@…>, on 11/07/12 at 09:11:17

score: Add and use _User_extensions_Iterate()

Replace the separate user extension iterations with a single iteration
function. This reduces code size and improves maintainability since the
iteration logic is only in one function. The runtime overhead is
insignificant.

  • Property mode set to 100644
File size: 13.3 KB
RevLine 
[0c819966]1include $(top_srcdir)/automake/multilib.am
[53fa63e]2include $(top_srcdir)/automake/compile.am
[e1d8abb]3
[4df3f89]4SUBDIRS = cpu
[0c819966]5
6## include
7
8include_rtemsdir = $(includedir)/rtems
9
[a2680da0]10include_rtems_HEADERS = include/rtems/debug.h
11include_rtems_HEADERS += include/rtems/system.h
12include_rtems_HEADERS += include/rtems/seterr.h
13include_rtems_HEADERS += include/rtems/bspsmp.h
[0c819966]14
15include_rtems_scoredir = $(includedir)/rtems/score
16
[a2680da0]17include_rtems_score_HEADERS = include/rtems/score/address.h
18include_rtems_score_HEADERS += include/rtems/score/apiext.h
19include_rtems_score_HEADERS += include/rtems/score/apimutex.h
20include_rtems_score_HEADERS += include/rtems/score/bitfield.h
21include_rtems_score_HEADERS += include/rtems/score/chain.h
22include_rtems_score_HEADERS += include/rtems/score/context.h
23include_rtems_score_HEADERS += include/rtems/score/copyrt.h
24include_rtems_score_HEADERS += include/rtems/score/corebarrier.h
25include_rtems_score_HEADERS += include/rtems/score/coremsg.h
26include_rtems_score_HEADERS += include/rtems/score/coremutex.h
27include_rtems_score_HEADERS += include/rtems/score/coresem.h
28include_rtems_score_HEADERS += include/rtems/score/heap.h
29include_rtems_score_HEADERS += include/rtems/score/protectedheap.h
30include_rtems_score_HEADERS += include/rtems/score/interr.h
31include_rtems_score_HEADERS += include/rtems/score/isr.h
[df00777]32include_rtems_score_HEADERS += include/rtems/score/isrlevel.h
[a2680da0]33include_rtems_score_HEADERS += include/rtems/score/object.h
34include_rtems_score_HEADERS += include/rtems/score/percpu.h
35include_rtems_score_HEADERS += include/rtems/score/priority.h
36include_rtems_score_HEADERS += include/rtems/score/prioritybitmap.h
37include_rtems_score_HEADERS += include/rtems/score/rbtree.h
38include_rtems_score_HEADERS += include/rtems/score/scheduler.h
[82db8e56]39include_rtems_score_HEADERS += include/rtems/score/schedulercbs.h
[5472ad41]40include_rtems_score_HEADERS += include/rtems/score/scheduleredf.h
[a2680da0]41include_rtems_score_HEADERS += include/rtems/score/schedulerpriority.h
42include_rtems_score_HEADERS += include/rtems/score/schedulersimple.h
43include_rtems_score_HEADERS += include/rtems/score/stack.h
44include_rtems_score_HEADERS += include/rtems/score/states.h
45include_rtems_score_HEADERS += include/rtems/score/sysstate.h
46include_rtems_score_HEADERS += include/rtems/score/thread.h
47include_rtems_score_HEADERS += include/rtems/score/threadq.h
48include_rtems_score_HEADERS += include/rtems/score/threadsync.h
49include_rtems_score_HEADERS += include/rtems/score/timespec.h
50include_rtems_score_HEADERS += include/rtems/score/timestamp.h
51include_rtems_score_HEADERS += include/rtems/score/timestamp64.h
52include_rtems_score_HEADERS += include/rtems/score/tod.h
53include_rtems_score_HEADERS += include/rtems/score/tqdata.h
54include_rtems_score_HEADERS += include/rtems/score/userext.h
55include_rtems_score_HEADERS += include/rtems/score/watchdog.h
56include_rtems_score_HEADERS += include/rtems/score/wkspace.h
57include_rtems_score_HEADERS += include/rtems/score/cpuopts.h
58include_rtems_score_HEADERS += include/rtems/score/basedefs.h
[42bb344e]59
60if HAS_SMP
[a2680da0]61include_rtems_score_HEADERS += include/rtems/score/smplock.h
62include_rtems_score_HEADERS += include/rtems/score/smp.h
[42bb344e]63endif
64
[88157a7]65if HAS_PTHREADS
[a2680da0]66include_rtems_score_HEADERS += include/rtems/score/corespinlock.h
67include_rtems_score_HEADERS += include/rtems/score/corerwlock.h
[0df035b]68endif
69
[0c819966]70if HAS_MP
[8f83131]71# We only build multiprocessing related files if HAS_MP was defined
[a2680da0]72include_rtems_score_HEADERS += include/rtems/score/mpci.h
73include_rtems_score_HEADERS += include/rtems/score/mppkt.h
74include_rtems_score_HEADERS += include/rtems/score/objectmp.h
75include_rtems_score_HEADERS += include/rtems/score/threadmp.h
[0c819966]76endif
77
[ba7bc099]78if HAS_SMP
79include_rtems_score_HEADERS += include/rtems/score/schedulersimplesmp.h
80endif
81
[0c819966]82## inline
[a2680da0]83include_rtems_score_HEADERS += inline/rtems/score/address.inl
84include_rtems_score_HEADERS += inline/rtems/score/chain.inl
85include_rtems_score_HEADERS += inline/rtems/score/corebarrier.inl
86include_rtems_score_HEADERS += inline/rtems/score/coremsg.inl
87include_rtems_score_HEADERS += inline/rtems/score/coremutex.inl
88include_rtems_score_HEADERS += inline/rtems/score/coresem.inl
89include_rtems_score_HEADERS += inline/rtems/score/heap.inl
90include_rtems_score_HEADERS += inline/rtems/score/isr.inl
91include_rtems_score_HEADERS += inline/rtems/score/object.inl
92include_rtems_score_HEADERS += inline/rtems/score/priority.inl
93include_rtems_score_HEADERS += inline/rtems/score/prioritybitmap.inl
94include_rtems_score_HEADERS += inline/rtems/score/rbtree.inl
95include_rtems_score_HEADERS += inline/rtems/score/scheduler.inl
96include_rtems_score_HEADERS += inline/rtems/score/schedulerpriority.inl
97include_rtems_score_HEADERS += inline/rtems/score/schedulersimple.inl
98include_rtems_score_HEADERS += inline/rtems/score/stack.inl
99include_rtems_score_HEADERS += inline/rtems/score/states.inl
100include_rtems_score_HEADERS += inline/rtems/score/sysstate.inl
101include_rtems_score_HEADERS += inline/rtems/score/thread.inl
102include_rtems_score_HEADERS += inline/rtems/score/threadq.inl
103include_rtems_score_HEADERS += inline/rtems/score/tod.inl
104include_rtems_score_HEADERS += inline/rtems/score/tqdata.inl
105include_rtems_score_HEADERS += inline/rtems/score/watchdog.inl
106include_rtems_score_HEADERS += inline/rtems/score/wkspace.inl
[88157a7]107
108if HAS_PTHREADS
[a2680da0]109include_rtems_score_HEADERS += inline/rtems/score/corespinlock.inl
110include_rtems_score_HEADERS += inline/rtems/score/corerwlock.inl
[0df035b]111endif
[8f83131]112
[0c819966]113if HAS_MP
[8f83131]114## We only build multiprocessing related files if HAS_MP was defined
[a2680da0]115include_rtems_score_HEADERS += inline/rtems/score/mppkt.inl
116include_rtems_score_HEADERS += inline/rtems/score/objectmp.inl
117include_rtems_score_HEADERS += inline/rtems/score/threadmp.inl
[0c819966]118endif
119
120## src
121
[4df3f89]122AM_CPPFLAGS += -D__RTEMS_INSIDE__
123
124noinst_LIBRARIES = libscore.a
125libscore_a_SOURCES =
126libscore_a_CPPFLAGS = $(AM_CPPFLAGS)
127
[0c819966]128# We only build multiprocessing related files if HAS_MP was defined
[4df3f89]129if HAS_MP
130libscore_a_SOURCES += src/mpci.c src/objectmp.c src/threadmp.c
131endif
[0c819966]132
[42bb344e]133if HAS_SMP
[dad36c52]134libscore_a_SOURCES += src/isrsmp.c src/smp.c src/smplock.c \
[ba7bc099]135    src/schedulersimplesmpblock.c src/schedulersimplesmpschedule.c \
[c5a4332]136    src/schedulersimplesmpunblock.c src/schedulersimplesmptick.c
[42bb344e]137endif
[06dcaf0]138
[8fd28d83]139## CORE_APIMUTEX_C_FILES
140libscore_a_SOURCES += src/apimutex.c src/apimutexallocate.c \
141    src/apimutexlock.c src/apimutexunlock.c
142
[9c191ee]143## CORE_BARRIER_C_FILES
144libscore_a_SOURCES += src/corebarrier.c src/corebarrierrelease.c \
145    src/corebarrierwait.c
146
[4df3f89]147## CORE_MESSAGE_QUEUE_C_FILES
148libscore_a_SOURCES += src/coremsg.c src/coremsgbroadcast.c \
[8f83131]149    src/coremsgclose.c src/coremsgflush.c src/coremsgflushwait.c \
150    src/coremsginsert.c src/coremsgflushsupp.c src/coremsgseize.c \
151    src/coremsgsubmit.c
[0c819966]152
[4df3f89]153## CORE_MUTEX_C_FILES
154libscore_a_SOURCES += src/coremutex.c src/coremutexflush.c \
[bc2b8df6]155    src/coremutexseize.c src/coremutexsurrender.c \
156    src/coremutexseizeintr.c
[0c819966]157
[11e8bc5]158## CORE_PERCPU_C_FILES
159libscore_a_SOURCES += src/percpu.c
160
[9c191ee]161## CORE_RWLOCK_C_FILES
[88157a7]162if HAS_PTHREADS
[9c191ee]163libscore_a_SOURCES += src/corerwlock.c src/corerwlockobtainread.c \
[047d67a]164    src/corerwlockobtainwrite.c src/corerwlockrelease.c src/corerwlocktimeout.c
[88157a7]165endif
[9c191ee]166
[4df3f89]167## CORE_SEMAPHORE_C_FILES
168libscore_a_SOURCES += src/coresem.c src/coresemflush.c src/coresemseize.c \
[0c819966]169    src/coresemsurrender.c
170
[9c191ee]171## CORE_SPINLOCK_C_FILES
[88157a7]172if HAS_PTHREADS
[9c191ee]173libscore_a_SOURCES += src/corespinlock.c src/corespinlockrelease.c \
174    src/corespinlockwait.c
[0df035b]175endif
[9c191ee]176
[4df3f89]177## HEAP_C_FILES
[e746a88]178libscore_a_SOURCES += src/heap.c src/heapallocate.c src/heapextend.c \
179    src/heapfree.c src/heapsizeofuserarea.c src/heapwalk.c src/heapgetinfo.c \
[28a0887]180    src/heapgetfreeinfo.c src/heapresizeblock.c src/heapiterate.c \
[6ccfe72]181    src/heapgreedy.c src/heapnoextend.c
[0c819966]182
[4df3f89]183## OBJECT_C_FILES
[584ab9e]184libscore_a_SOURCES += src/objectallocate.c src/objectclose.c \
[ce19f1fa]185    src/objectextendinformation.c src/objectfree.c src/objectget.c \
186    src/objectgetisr.c src/objectgetnext.c src/objectinitializeinformation.c \
187    src/objectnametoid.c src/objectnametoidstring.c \
[ff08b808]188    src/objectshrinkinformation.c src/objectgetnoprotection.c \
[6c06288]189    src/objectidtoname.c src/objectgetnameasstring.c src/objectsetname.c \
[9184270]190    src/objectgetinfo.c src/objectgetinfoid.c src/objectapimaximumclass.c \
191    src/objectnamespaceremove.c
[0c819966]192
[0faa9dad]193## SCHEDULER_C_FILES
194libscore_a_SOURCES += src/scheduler.c
195
196## SCHEDULERPRIORITY_C_FILES
197libscore_a_SOURCES += src/schedulerpriority.c \
[108c4b0]198    src/schedulerpriorityallocate.c \
[3203e09]199    src/schedulerprioritytick.c \
[108c4b0]200    src/schedulerpriorityblock.c \
201    src/schedulerpriorityenqueue.c \
202    src/schedulerpriorityenqueuefirst.c \
203    src/schedulerpriorityextract.c \
204    src/schedulerpriorityfree.c \
[ac9d2ecc]205    src/schedulerpriorityprioritycompare.c \
206    src/schedulerpriorityreleasejob.c \
[108c4b0]207    src/schedulerpriorityschedule.c \
208    src/schedulerpriorityunblock.c \
209    src/schedulerpriorityupdate.c \
210    src/schedulerpriorityyield.c
[0faa9dad]211
[0118ed6]212## SCHEDULERSIMPLE_C_FILES
213libscore_a_SOURCES += src/schedulersimple.c \
214    src/schedulersimpleblock.c \
215    src/schedulersimpleenqueue.c \
216    src/schedulersimpleenqueuefirst.c \
217    src/schedulersimpleextract.c \
218    src/schedulersimplereadyqueueenqueue.c \
219    src/schedulersimplereadyqueueenqueuefirst.c \
220    src/schedulersimpleschedule.c \
221    src/schedulersimpleunblock.c \
222    src/schedulersimpleyield.c
223
[5472ad41]224## SCHEDULEREDF_C_FILES
225libscore_a_SOURCES += src/scheduleredf.c \
226    src/scheduleredfallocate.c \
227    src/scheduleredfblock.c \
228    src/scheduleredfenqueue.c \
229    src/scheduleredfenqueuefirst.c \
230    src/scheduleredfextract.c \
231    src/scheduleredffree.c \
232    src/scheduleredfprioritycompare.c \
233    src/scheduleredfreleasejob.c \
234    src/scheduleredfschedule.c \
235    src/scheduleredfunblock.c \
236    src/scheduleredfupdate.c \
237    src/scheduleredfyield.c
238
[82db8e56]239## SCHEDULERCBS_C_FILES
240libscore_a_SOURCES += src/schedulercbs.c \
[7a9288fe]241    src/schedulercbsallocate.c \
[82db8e56]242    src/schedulercbsattachthread.c \
243    src/schedulercbscleanup.c \
244    src/schedulercbscreateserver.c \
245    src/schedulercbsdestroyserver.c \
246    src/schedulercbsdetachthread.c \
247    src/schedulercbsgetapprovedbudget.c \
248    src/schedulercbsgetexecutiontime.c \
249    src/schedulercbsgetparameters.c \
250    src/schedulercbsgetremainingbudget.c \
251    src/schedulercbsgetserverid.c \
252    src/schedulercbssetparameters.c \
253    src/schedulercbsreleasejob.c \
254    src/schedulercbsunblock.c
255
[e746a88]256## PROTECTED_HEAP_C_FILES
[9224a751]257libscore_a_SOURCES += src/pheapallocate.c \
[7246c8e9]258    src/pheapextend.c src/pheapfree.c src/pheapgetsize.c \
259    src/pheapgetblocksize.c src/pheapgetfreeinfo.c src/pheapgetinfo.c \
[a89ae540]260    src/pheapinit.c src/pheapresizeblock.c src/pheapwalk.c src/pheapiterate.c
[e746a88]261
[bd9baa81]262## RBTREE_C_FILES
263libscore_a_SOURCES += src/rbtree.c \
264    src/rbtreeextract.c src/rbtreefind.c src/rbtreefindheader.c \
[0f31ec5d]265    src/rbtreeget.c src/rbtreeinsert.c src/rbtreeiterate.c src/rbtreenext.c
[bd9baa81]266
[4df3f89]267## THREAD_C_FILES
268libscore_a_SOURCES += src/thread.c src/threadchangepriority.c \
[8f83131]269    src/threadclearstate.c src/threadclose.c src/threadcreateidle.c \
[569b3f4]270    src/threaddelayended.c src/threaddispatch.c \
[d7c3883]271    src/threadenabledispatch.c src/threaddisabledispatch.c \
[93f7ea15]272    src/threadget.c src/threadhandler.c src/threadinitialize.c \
[8bef4cc]273    src/threadloadenv.c src/threadready.c src/threadreset.c \
[59eb125]274    src/threadrestart.c src/threadsetpriority.c \
[8bef4cc]275    src/threadsetstate.c src/threadsettransient.c \
[93f7ea15]276    src/threadstackallocate.c src/threadstackfree.c src/threadstart.c \
[3203e09]277    src/threadstartmultitasking.c src/iterateoverthreads.c \
278    src/threadblockingoperationcancel.c
[3a8a999]279   
280if HAS_SMP
281libscore_a_SOURCES += src/threaddispatchdisablelevel.c
282endif
[0c819966]283
[4df3f89]284## THREADQ_C_FILES
285libscore_a_SOURCES += src/threadq.c src/threadqdequeue.c \
[8f83131]286    src/threadqdequeuefifo.c src/threadqdequeuepriority.c \
287    src/threadqenqueue.c src/threadqenqueuefifo.c \
288    src/threadqenqueuepriority.c src/threadqextract.c \
289    src/threadqextractfifo.c src/threadqextractpriority.c \
290    src/threadqextractwithproxy.c src/threadqfirst.c src/threadqfirstfifo.c \
[96d0b64]291    src/threadqfirstpriority.c src/threadqflush.c src/threadqrequeue.c \
[c57f26bd]292    src/threadqprocesstimeout.c src/threadqtimeout.c
[0c819966]293
[fc054ca]294## TIMESPEC_C_FILES
[412dbff6]295libscore_a_SOURCES += src/timespecaddto.c src/timespecfromticks.c \
[3a42e6fd]296    src/timespecisvalid.c src/timespeclessthan.c \
[c3330a8]297    src/timespecsubtract.c src/timespectoticks.c src/timespecdivide.c \
298    src/timespecdividebyinteger.c
[fc054ca]299
[e57cb3c]300## TIMESTAMP_INT64_C_FILES
301libscore_a_SOURCES += src/ts64addto.c src/ts64dividebyinteger.c \
302    src/ts64divide.c src/ts64equalto.c \
303    src/ts64getnanoseconds.c src/ts64getseconds.c \
[3a42e6fd]304    src/ts64lessthan.c \
[e57cb3c]305    src/ts64set.c src/ts64settozero.c src/ts64subtract.c \
306    src/ts64toticks.c src/ts64totimespec.c
307
[4df3f89]308## TOD_C_FILES
[812da54]309libscore_a_SOURCES += src/coretod.c src/coretodset.c src/coretodget.c \
[26fb4aa]310    src/coretodgetuptime.c src/coretodgetuptimetimespec.c src/coretodtickle.c \
311    src/coretodmsecstoticks.c src/coretodtickspersec.c src/coretodusectoticks.c
[0c819966]312
[4df3f89]313## WATCHDOG_C_FILES
[812da54]314libscore_a_SOURCES += src/watchdog.c src/watchdogadjust.c \
[109ace3a]315    src/watchdogadjusttochain.c src/watchdoginsert.c src/watchdogremove.c \
[18657d1]316    src/watchdogtickle.c src/watchdogreport.c src/watchdogreportchain.c \
317    src/watchdognanoseconds.c
[0c819966]318
[c3db01d0]319## USEREXT_C_FILES
[b7de5de]320libscore_a_SOURCES += src/userextaddset.c \
[e5ae7c92]321    src/userext.c src/userextremoveset.c src/userextiterate.c \
[c3db01d0]322    src/userextthreadswitch.c
323
[4df3f89]324## STD_C_FILES
[c3db01d0]325libscore_a_SOURCES += src/apiext.c src/chain.c src/chainappend.c \
326    src/chainextract.c src/chainget.c src/chaininsert.c \
[a19ae9ec]327    src/chainappendempty.c src/chainprependempty.c src/chaingetempty.c \
[141b311]328    src/interr.c src/isr.c src/wkspace.c src/wkstringduplicate.c
[0c819966]329
[4768a274]330EXTRA_DIST = src/Unlimited.txt
[0c819966]331
[dbe8e519]332DISTCLEANFILES = include/rtems/score/cpuopts.h
[8f83131]333
[6265b83]334include $(srcdir)/preinstall.am
[fed6210d]335include $(top_srcdir)/automake/subdirs.am
336include $(top_srcdir)/automake/local.am
Note: See TracBrowser for help on using the repository browser.