source: rtems/cpukit/score/Makefile.am @ 6c7caa1a

4.115
Last change on this file since 6c7caa1a was 3e201139, checked in by Sebastian Huber <sebastian.huber@…>, on 05/23/14 at 08:00:33

score: Add Resource Handler

A resource is something that has at most one owner at a time and may
have multiple rivals in case an owner is present. The owner and rivals
are impersonated via resource nodes. A resource is represented via the
resource control structure. The resource controls and nodes are
organized as trees. It is possible to detect deadlocks via such a
resource tree. The _Resource_Iterate() function can be used to iterate
through such a resource tree starting at a top node.

  • Property mode set to 100644
File size: 14.6 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
[0c819966]13
14include_rtems_scoredir = $(includedir)/rtems/score
15
[a2680da0]16include_rtems_score_HEADERS = include/rtems/score/address.h
17include_rtems_score_HEADERS += include/rtems/score/apiext.h
18include_rtems_score_HEADERS += include/rtems/score/apimutex.h
[95519eed]19include_rtems_score_HEADERS += include/rtems/score/assert.h
[a2680da0]20include_rtems_score_HEADERS += include/rtems/score/chain.h
[6e93dc4a]21include_rtems_score_HEADERS += include/rtems/score/chainimpl.h
[a2680da0]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
[bb2d9f9]25include_rtems_score_HEADERS += include/rtems/score/corebarrierimpl.h
[a2680da0]26include_rtems_score_HEADERS += include/rtems/score/coremsg.h
[b5d514f]27include_rtems_score_HEADERS += include/rtems/score/coremsgimpl.h
[a2680da0]28include_rtems_score_HEADERS += include/rtems/score/coremutex.h
[20e239c2]29include_rtems_score_HEADERS += include/rtems/score/coremuteximpl.h
[a2680da0]30include_rtems_score_HEADERS += include/rtems/score/coresem.h
[c4f58558]31include_rtems_score_HEADERS += include/rtems/score/coresemimpl.h
[9db8705]32include_rtems_score_HEADERS += include/rtems/score/cpuset.h
33include_rtems_score_HEADERS += include/rtems/score/cpusetimpl.h
[a2680da0]34include_rtems_score_HEADERS += include/rtems/score/heap.h
[e6f7f81]35include_rtems_score_HEADERS += include/rtems/score/heapimpl.h
[a2680da0]36include_rtems_score_HEADERS += include/rtems/score/protectedheap.h
37include_rtems_score_HEADERS += include/rtems/score/interr.h
38include_rtems_score_HEADERS += include/rtems/score/isr.h
[df00777]39include_rtems_score_HEADERS += include/rtems/score/isrlevel.h
[2d915cf]40include_rtems_score_HEADERS += include/rtems/score/isrlock.h
[8fb2bea]41include_rtems_score_HEADERS += include/rtems/score/freechain.h
[8fcafdd5]42include_rtems_score_HEADERS += include/rtems/score/mrsp.h
43include_rtems_score_HEADERS += include/rtems/score/mrspimpl.h
[a2680da0]44include_rtems_score_HEADERS += include/rtems/score/object.h
[a2e3f33]45include_rtems_score_HEADERS += include/rtems/score/objectimpl.h
[a5385b1]46include_rtems_score_HEADERS += include/rtems/score/onceimpl.h
[a2680da0]47include_rtems_score_HEADERS += include/rtems/score/percpu.h
48include_rtems_score_HEADERS += include/rtems/score/priority.h
49include_rtems_score_HEADERS += include/rtems/score/prioritybitmap.h
[f0bfd7d8]50include_rtems_score_HEADERS += include/rtems/score/prioritybitmapimpl.h
[f980561]51include_rtems_score_HEADERS += include/rtems/score/profiling.h
[a2680da0]52include_rtems_score_HEADERS += include/rtems/score/rbtree.h
[93fb3cb0]53include_rtems_score_HEADERS += include/rtems/score/rbtreeimpl.h
[3e201139]54include_rtems_score_HEADERS += include/rtems/score/resource.h
55include_rtems_score_HEADERS += include/rtems/score/resourceimpl.h
[a2680da0]56include_rtems_score_HEADERS += include/rtems/score/scheduler.h
[c6e21ee1]57include_rtems_score_HEADERS += include/rtems/score/schedulerimpl.h
[82db8e56]58include_rtems_score_HEADERS += include/rtems/score/schedulercbs.h
[beab7329]59include_rtems_score_HEADERS += include/rtems/score/schedulercbsimpl.h
[5472ad41]60include_rtems_score_HEADERS += include/rtems/score/scheduleredf.h
[e5ca54c9]61include_rtems_score_HEADERS += include/rtems/score/scheduleredfimpl.h
[a2680da0]62include_rtems_score_HEADERS += include/rtems/score/schedulerpriority.h
[f068384e]63include_rtems_score_HEADERS += include/rtems/score/schedulerpriorityimpl.h
[99b3505]64include_rtems_score_HEADERS += include/rtems/score/schedulerprioritysmp.h
[a2680da0]65include_rtems_score_HEADERS += include/rtems/score/schedulersimple.h
[bd5606ab]66include_rtems_score_HEADERS += include/rtems/score/schedulersimpleimpl.h
[9d83f58a]67include_rtems_score_HEADERS += include/rtems/score/schedulersmp.h
68include_rtems_score_HEADERS += include/rtems/score/schedulersmpimpl.h
[edde99b]69include_rtems_score_HEADERS += include/rtems/score/smp.h
[ad7292f]70include_rtems_score_HEADERS += include/rtems/score/smpbarrier.h
[3ccce23]71include_rtems_score_HEADERS += include/rtems/score/smplock.h
[6ca4f6a]72include_rtems_score_HEADERS += include/rtems/score/smpimpl.h
[a2680da0]73include_rtems_score_HEADERS += include/rtems/score/stack.h
[218286bc]74include_rtems_score_HEADERS += include/rtems/score/stackimpl.h
[a2680da0]75include_rtems_score_HEADERS += include/rtems/score/states.h
[fe6c170c]76include_rtems_score_HEADERS += include/rtems/score/statesimpl.h
[a2680da0]77include_rtems_score_HEADERS += include/rtems/score/sysstate.h
78include_rtems_score_HEADERS += include/rtems/score/thread.h
[5618c37a]79include_rtems_score_HEADERS += include/rtems/score/threadimpl.h
[4fc370e]80include_rtems_score_HEADERS += include/rtems/score/threaddispatch.h
[a2680da0]81include_rtems_score_HEADERS += include/rtems/score/threadq.h
[a112364]82include_rtems_score_HEADERS += include/rtems/score/threadqimpl.h
[a2680da0]83include_rtems_score_HEADERS += include/rtems/score/threadsync.h
84include_rtems_score_HEADERS += include/rtems/score/timespec.h
85include_rtems_score_HEADERS += include/rtems/score/timestamp.h
86include_rtems_score_HEADERS += include/rtems/score/timestamp64.h
[022851a]87include_rtems_score_HEADERS += include/rtems/score/tls.h
[965a442]88include_rtems_score_HEADERS += include/rtems/score/tod.h
[f031df0e]89include_rtems_score_HEADERS += include/rtems/score/todimpl.h
[a2680da0]90include_rtems_score_HEADERS += include/rtems/score/userext.h
[3be0c9a]91include_rtems_score_HEADERS += include/rtems/score/userextimpl.h
[a2680da0]92include_rtems_score_HEADERS += include/rtems/score/watchdog.h
[4b48ece0]93include_rtems_score_HEADERS += include/rtems/score/watchdogimpl.h
[a2680da0]94include_rtems_score_HEADERS += include/rtems/score/wkspace.h
95include_rtems_score_HEADERS += include/rtems/score/cpuopts.h
96include_rtems_score_HEADERS += include/rtems/score/basedefs.h
[42bb344e]97
[88157a7]98if HAS_PTHREADS
[a2680da0]99include_rtems_score_HEADERS += include/rtems/score/corespinlock.h
[c71b596]100include_rtems_score_HEADERS += include/rtems/score/corespinlockimpl.h
[a2680da0]101include_rtems_score_HEADERS += include/rtems/score/corerwlock.h
[cbdabc8]102include_rtems_score_HEADERS += include/rtems/score/corerwlockimpl.h
[0df035b]103endif
104
[0c819966]105if HAS_MP
[8f83131]106# We only build multiprocessing related files if HAS_MP was defined
[a2680da0]107include_rtems_score_HEADERS += include/rtems/score/mpci.h
[7f04cb18]108include_rtems_score_HEADERS += include/rtems/score/mpciimpl.h
[a2680da0]109include_rtems_score_HEADERS += include/rtems/score/mppkt.h
110include_rtems_score_HEADERS += include/rtems/score/objectmp.h
111include_rtems_score_HEADERS += include/rtems/score/threadmp.h
[0c819966]112endif
113
[ba7bc099]114if HAS_SMP
[8a9568d2]115include_rtems_score_HEADERS += include/rtems/score/atomic.h
116include_rtems_score_HEADERS += include/rtems/score/cpustdatomic.h
[56c396b]117include_rtems_score_HEADERS += include/rtems/score/schedulerpriorityaffinitysmp.h
[ba7bc099]118include_rtems_score_HEADERS += include/rtems/score/schedulersimplesmp.h
119endif
120
[0c819966]121## src
122
[4df3f89]123noinst_LIBRARIES = libscore.a
124libscore_a_SOURCES =
125libscore_a_CPPFLAGS = $(AM_CPPFLAGS)
126
[0c819966]127# We only build multiprocessing related files if HAS_MP was defined
[4df3f89]128if HAS_MP
129libscore_a_SOURCES += src/mpci.c src/objectmp.c src/threadmp.c
130endif
[0c819966]131
[42bb344e]132if HAS_SMP
[53ad908]133libscore_a_SOURCES += src/profilingsmplock.c
[beab7329]134libscore_a_SOURCES += src/schedulersmpvalidstatechanges.c
[56c396b]135libscore_a_SOURCES += src/schedulerpriorityaffinitysmp.c
[99b3505]136libscore_a_SOURCES += src/schedulerprioritysmp.c
[a936aa49]137libscore_a_SOURCES += src/schedulersimplesmp.c
138libscore_a_SOURCES += src/smp.c
[9db8705]139libscore_a_SOURCES += src/cpuset.c
140libscore_a_SOURCES += src/cpusetprintsupport.c
[cfe457f]141libscore_a_SOURCES += src/schedulerdefaultgetaffinity.c
142libscore_a_SOURCES += src/schedulerdefaultsetaffinity.c
[6359b68]143libscore_a_SOURCES += src/schedulersmpstartidle.c
[42bb344e]144endif
[06dcaf0]145
[8fd28d83]146## CORE_APIMUTEX_C_FILES
[a2e3f33]147libscore_a_SOURCES += src/apimutex.c \
[8fd28d83]148    src/apimutexlock.c src/apimutexunlock.c
149
[9c191ee]150## CORE_BARRIER_C_FILES
151libscore_a_SOURCES += src/corebarrier.c src/corebarrierrelease.c \
152    src/corebarrierwait.c
153
[4df3f89]154## CORE_MESSAGE_QUEUE_C_FILES
155libscore_a_SOURCES += src/coremsg.c src/coremsgbroadcast.c \
[8f83131]156    src/coremsgclose.c src/coremsgflush.c src/coremsgflushwait.c \
157    src/coremsginsert.c src/coremsgflushsupp.c src/coremsgseize.c \
158    src/coremsgsubmit.c
[0c819966]159
[4df3f89]160## CORE_MUTEX_C_FILES
161libscore_a_SOURCES += src/coremutex.c src/coremutexflush.c \
[bc2b8df6]162    src/coremutexseize.c src/coremutexsurrender.c \
163    src/coremutexseizeintr.c
[0c819966]164
[11e8bc5]165## CORE_PERCPU_C_FILES
166libscore_a_SOURCES += src/percpu.c
[f1738ed]167libscore_a_SOURCES += src/percpuasm.c
[11e8bc5]168
[9c191ee]169## CORE_RWLOCK_C_FILES
[88157a7]170if HAS_PTHREADS
[9c191ee]171libscore_a_SOURCES += src/corerwlock.c src/corerwlockobtainread.c \
[047d67a]172    src/corerwlockobtainwrite.c src/corerwlockrelease.c src/corerwlocktimeout.c
[88157a7]173endif
[9c191ee]174
[4df3f89]175## CORE_SEMAPHORE_C_FILES
176libscore_a_SOURCES += src/coresem.c src/coresemflush.c src/coresemseize.c \
[0c819966]177    src/coresemsurrender.c
178
[9c191ee]179## CORE_SPINLOCK_C_FILES
[88157a7]180if HAS_PTHREADS
[9c191ee]181libscore_a_SOURCES += src/corespinlock.c src/corespinlockrelease.c \
182    src/corespinlockwait.c
[0df035b]183endif
[9c191ee]184
[4df3f89]185## HEAP_C_FILES
[e746a88]186libscore_a_SOURCES += src/heap.c src/heapallocate.c src/heapextend.c \
187    src/heapfree.c src/heapsizeofuserarea.c src/heapwalk.c src/heapgetinfo.c \
[28a0887]188    src/heapgetfreeinfo.c src/heapresizeblock.c src/heapiterate.c \
[6ccfe72]189    src/heapgreedy.c src/heapnoextend.c
[0c819966]190
[4df3f89]191## OBJECT_C_FILES
[584ab9e]192libscore_a_SOURCES += src/objectallocate.c src/objectclose.c \
[ce19f1fa]193    src/objectextendinformation.c src/objectfree.c src/objectget.c \
194    src/objectgetisr.c src/objectgetnext.c src/objectinitializeinformation.c \
195    src/objectnametoid.c src/objectnametoidstring.c \
[ff08b808]196    src/objectshrinkinformation.c src/objectgetnoprotection.c \
[6c06288]197    src/objectidtoname.c src/objectgetnameasstring.c src/objectsetname.c \
[9184270]198    src/objectgetinfo.c src/objectgetinfoid.c src/objectapimaximumclass.c \
[fe1dc22]199    src/objectnamespaceremove.c \
200    src/objectactivecount.c
[0c819966]201
[0faa9dad]202## SCHEDULER_C_FILES
[4994927]203libscore_a_SOURCES += src/log2table.c
[0faa9dad]204libscore_a_SOURCES += src/scheduler.c
[0712d17]205libscore_a_SOURCES += src/schedulergetaffinity.c
206libscore_a_SOURCES += src/schedulersetaffinity.c
[62d947d]207libscore_a_SOURCES += src/schedulerdefaultallocatefree.c
[037cfd1]208libscore_a_SOURCES += src/schedulerdefaultreleasejob.c
[3733b224]209libscore_a_SOURCES += src/schedulerdefaultschedule.c
[1ccb64e1]210libscore_a_SOURCES += src/schedulerdefaultstartidle.c
[3346106b]211libscore_a_SOURCES += src/schedulerdefaulttick.c
212libscore_a_SOURCES += src/schedulerdefaultupdate.c
[0faa9dad]213
214## SCHEDULERPRIORITY_C_FILES
215libscore_a_SOURCES += src/schedulerpriority.c \
[108c4b0]216    src/schedulerpriorityblock.c \
[f39f667a]217    src/schedulerprioritychangepriority.c \
[ac9d2ecc]218    src/schedulerpriorityprioritycompare.c \
[108c4b0]219    src/schedulerpriorityschedule.c \
220    src/schedulerpriorityunblock.c \
221    src/schedulerpriorityupdate.c \
222    src/schedulerpriorityyield.c
[0faa9dad]223
[0118ed6]224## SCHEDULERSIMPLE_C_FILES
225libscore_a_SOURCES += src/schedulersimple.c \
226    src/schedulersimpleblock.c \
[f39f667a]227    src/schedulersimplechangepriority.c \
[0118ed6]228    src/schedulersimpleschedule.c \
229    src/schedulersimpleunblock.c \
[2d1bdc8]230    src/schedulersimpleyield.c
[0118ed6]231
[5472ad41]232## SCHEDULEREDF_C_FILES
233libscore_a_SOURCES += src/scheduleredf.c \
234    src/scheduleredfallocate.c \
235    src/scheduleredfblock.c \
[f39f667a]236    src/scheduleredfchangepriority.c \
[5472ad41]237    src/scheduleredfprioritycompare.c \
238    src/scheduleredfreleasejob.c \
239    src/scheduleredfschedule.c \
240    src/scheduleredfunblock.c \
241    src/scheduleredfupdate.c \
242    src/scheduleredfyield.c
243
[82db8e56]244## SCHEDULERCBS_C_FILES
245libscore_a_SOURCES += src/schedulercbs.c \
[7a9288fe]246    src/schedulercbsallocate.c \
[82db8e56]247    src/schedulercbsattachthread.c \
248    src/schedulercbscleanup.c \
249    src/schedulercbscreateserver.c \
250    src/schedulercbsdestroyserver.c \
251    src/schedulercbsdetachthread.c \
252    src/schedulercbsgetapprovedbudget.c \
253    src/schedulercbsgetexecutiontime.c \
254    src/schedulercbsgetparameters.c \
255    src/schedulercbsgetremainingbudget.c \
256    src/schedulercbsgetserverid.c \
257    src/schedulercbssetparameters.c \
258    src/schedulercbsreleasejob.c \
259    src/schedulercbsunblock.c
260
[e746a88]261## PROTECTED_HEAP_C_FILES
[9224a751]262libscore_a_SOURCES += src/pheapallocate.c \
[7246c8e9]263    src/pheapextend.c src/pheapfree.c src/pheapgetsize.c \
264    src/pheapgetblocksize.c src/pheapgetfreeinfo.c src/pheapgetinfo.c \
[a89ae540]265    src/pheapinit.c src/pheapresizeblock.c src/pheapwalk.c src/pheapiterate.c
[e746a88]266
[8fb2bea]267## FREECHAIN_C_FILES
268libscore_a_SOURCES += src/freechain.c
269
[bd9baa81]270## RBTREE_C_FILES
271libscore_a_SOURCES += src/rbtree.c \
[833dd90]272    src/rbtreeextract.c src/rbtreefind.c \
273    src/rbtreeinsert.c src/rbtreeiterate.c src/rbtreenext.c
[bd9baa81]274
[4df3f89]275## THREAD_C_FILES
276libscore_a_SOURCES += src/thread.c src/threadchangepriority.c \
[1b1be254]277    src/threadclearstate.c src/threadcreateidle.c \
[569b3f4]278    src/threaddelayended.c src/threaddispatch.c \
[d7c3883]279    src/threadenabledispatch.c src/threaddisabledispatch.c \
[93f7ea15]280    src/threadget.c src/threadhandler.c src/threadinitialize.c \
[dcd5e26]281    src/threadloadenv.c src/threadready.c \
[59eb125]282    src/threadrestart.c src/threadsetpriority.c \
[f39f667a]283    src/threadsetstate.c \
[93f7ea15]284    src/threadstackallocate.c src/threadstackfree.c src/threadstart.c \
[3203e09]285    src/threadstartmultitasking.c src/iterateoverthreads.c \
286    src/threadblockingoperationcancel.c
[2d1bdc8]287
[3a8a999]288if HAS_SMP
[ad7292f]289libscore_a_SOURCES += src/smpbarrierwait.c
[3a8a999]290libscore_a_SOURCES += src/threaddispatchdisablelevel.c
291endif
[0c819966]292
[4df3f89]293## THREADQ_C_FILES
294libscore_a_SOURCES += src/threadq.c src/threadqdequeue.c \
[8f83131]295    src/threadqdequeuefifo.c src/threadqdequeuepriority.c \
296    src/threadqenqueue.c src/threadqenqueuefifo.c \
297    src/threadqenqueuepriority.c src/threadqextract.c \
298    src/threadqextractfifo.c src/threadqextractpriority.c \
299    src/threadqextractwithproxy.c src/threadqfirst.c src/threadqfirstfifo.c \
[b4bdbcf]300    src/threadqfirstpriority.c src/threadqflush.c \
[c57f26bd]301    src/threadqprocesstimeout.c src/threadqtimeout.c
[0c819966]302
[fc054ca]303## TIMESPEC_C_FILES
[412dbff6]304libscore_a_SOURCES += src/timespecaddto.c src/timespecfromticks.c \
[3a42e6fd]305    src/timespecisvalid.c src/timespeclessthan.c \
[c3330a8]306    src/timespecsubtract.c src/timespectoticks.c src/timespecdivide.c \
[2d1bdc8]307    src/timespecdividebyinteger.c src/timespecgetasnanoseconds.c
[fc054ca]308
[e57cb3c]309## TIMESTAMP_INT64_C_FILES
310libscore_a_SOURCES += src/ts64addto.c src/ts64dividebyinteger.c \
311    src/ts64divide.c src/ts64equalto.c \
312    src/ts64getnanoseconds.c src/ts64getseconds.c \
[3a42e6fd]313    src/ts64lessthan.c \
[e57cb3c]314    src/ts64set.c src/ts64settozero.c src/ts64subtract.c \
[154721c4]315    src/ts64toticks.c src/ts64totimespec.c src/ts64totimeval.c
[e57cb3c]316
[4df3f89]317## TOD_C_FILES
[812da54]318libscore_a_SOURCES += src/coretod.c src/coretodset.c src/coretodget.c \
[62181b21]319    src/coretodgetuptimetimespec.c src/coretodtickle.c \
[9bf7467]320    src/coretodsecondssinceepoch.c \
[88c74ab]321    src/coretodtickspersec.c
[0c819966]322
[4df3f89]323## WATCHDOG_C_FILES
[812da54]324libscore_a_SOURCES += src/watchdog.c src/watchdogadjust.c \
[109ace3a]325    src/watchdogadjusttochain.c src/watchdoginsert.c src/watchdogremove.c \
[9b44339c]326    src/watchdogtickle.c
[0c819966]327
[c3db01d0]328## USEREXT_C_FILES
[b7de5de]329libscore_a_SOURCES += src/userextaddset.c \
[32b2c83]330    src/userext.c src/userextremoveset.c src/userextiterate.c
[c3db01d0]331
[4df3f89]332## STD_C_FILES
[c3db01d0]333libscore_a_SOURCES += src/apiext.c src/chain.c src/chainappend.c \
334    src/chainextract.c src/chainget.c src/chaininsert.c \
[a19ae9ec]335    src/chainappendempty.c src/chainprependempty.c src/chaingetempty.c \
[cbd07e4]336    src/chainnodecount.c \
[ff25926]337    src/debugisthreaddispatchingallowed.c \
[141b311]338    src/interr.c src/isr.c src/wkspace.c src/wkstringduplicate.c
[72f4b98b]339libscore_a_SOURCES += src/debugisownerofallocator.c
[f980561]340libscore_a_SOURCES += src/profilingisrentryexit.c
[a5385b1]341libscore_a_SOURCES += src/once.c
[3e201139]342libscore_a_SOURCES += src/resourceiterate.c
[0c819966]343
[4768a274]344EXTRA_DIST = src/Unlimited.txt
[0c819966]345
[dbe8e519]346DISTCLEANFILES = include/rtems/score/cpuopts.h
[8f83131]347
[6265b83]348include $(srcdir)/preinstall.am
[fed6210d]349include $(top_srcdir)/automake/subdirs.am
350include $(top_srcdir)/automake/local.am
Note: See TracBrowser for help on using the repository browser.