The meaning is exactly what you think it means. A compiler is a computer program, and as such it is written in a programming language. Any concrete compiler translates from language A to language B, while having itself being written in language C. If A == C, then the compiler is self-compiling (or self-hosting). Otherwise, it isn't.
The question you may be asking yourself is: How did the compiler get created in the first place? The answer is that large and complex computer programs aren't created all in one go. Most self-hosting compilers were initially written in lower-level languages with a much smaller set of supported features, and then extended, until they are completely self-hosting. This avoids the obvious paradox of how the first compiler came about.