<feed xmlns='http://www.w3.org/2005/Atom'>
<title>objective.git/arch, branch kernconf</title>
<subtitle>Objective Kernel source code
</subtitle>
<id>https://git.objectiveos.org/objective/objective.git/atom?h=kernconf</id>
<link rel='self' href='https://git.objectiveos.org/objective/objective.git/atom?h=kernconf'/>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/'/>
<updated>2026-07-23T10:55:20Z</updated>
<entry>
<title>Include cmake feature module in the build routine</title>
<updated>2026-07-23T10:55:20Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-07-23T07:37:44Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=ccb9dbd3f78d9f06826560bd54519bab3477947a'/>
<id>urn:sha1:ccb9dbd3f78d9f06826560bd54519bab3477947a</id>
<content type='text'>
Add predicate `ifFeatureEnables` that checks feature is define or not,
and return accordingly boolean value.

Consider some cmake objective targets as features. Populate information
to these targets, and provides in particular file `CMakeFeatures.txt`.
Cpuid, MSR, ACPI and driver VGA in text mode they are.

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Apply the GPLv3 license</title>
<updated>2026-06-09T13:02:43Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-06-09T13:02:43Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=38cbd9f8b8f90a1a351dcfd30435d280b7942786'/>
<id>urn:sha1:38cbd9f8b8f90a1a351dcfd30435d280b7942786</id>
<content type='text'>
Copyright disclaimer and copyright note are prepending to a every source
file.

Add license section in the `README.md` file.

Create the LICENSE` file with license information.

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Cmake status information output</title>
<updated>2026-03-30T10:50:25Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-03-30T10:50:25Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=e5eb32a5123920d18a55819bcea8a23b3a3e0f4d'/>
<id>urn:sha1:e5eb32a5123920d18a55819bcea8a23b3a3e0f4d</id>
<content type='text'>
Reinforce of compiler, C runtime, architecture checks at cmake
    configuration.

Compiler check means continue building at the cmake configure
    stage only for supported compilers. Use unsupported compiler
    involves immediate build process stopping.

C runtime check means finding of runtime objects. Especially for
    *crtbegin.o* and *crtend.o* files.

Architecture means *ObjectiveProject_ARCHITECTURE* variable is set.
    That variable configure at toolchain file by default and cannot
    override if toolchain file is passed.

    TODO
    - Image creation
    - Build under window platform (optional)

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Set architecture bitness in nasm files</title>
<updated>2026-03-28T08:29:22Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-03-28T08:11:43Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=256b2c871a0f3ac0175de298b78c6ea527f42f60'/>
<id>urn:sha1:256b2c871a0f3ac0175de298b78c6ea527f42f60</id>
<content type='text'>
Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Cmake build type at the generation stage</title>
<updated>2026-03-28T07:55:53Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-03-28T07:55:53Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=378972285342f52bb71822d87ba261b76b4a42ed'/>
<id>urn:sha1:378972285342f52bb71822d87ba261b76b4a42ed</id>
<content type='text'>
Fix in *nasm* files - set architecture bitness.

Move compiler flags from *toolchain* file to *requirements target*
    considering cmake files. This solution allows available of
    multi-configurations generators to pass compiler options
    without affecting on single-configuration generators.

TODO
- Debug information
- Image creation
- Build under window platform (optional)

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Cmake build generator support: toolchain file</title>
<updated>2026-03-28T04:36:06Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-03-28T04:36:06Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=c62baf8bca986d493e1caf441ea7a6b9d1c1823f'/>
<id>urn:sha1:c62baf8bca986d493e1caf441ea7a6b9d1c1823f</id>
<content type='text'>
Two toolchain files for clang and gcc compilers under x86 platform.
Debug flags also passed at the configure time.

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Cmake build generator support: build stage</title>
<updated>2026-03-27T07:03:55Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2026-03-27T07:03:55Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=6ffe96d1e3f0289c2070e050cf8e1a30288e6d91'/>
<id>urn:sha1:6ffe96d1e3f0289c2070e050cf8e1a30288e6d91</id>
<content type='text'>
Multi-target architecture implementation:
    each root source code directory presents the one
    *INTERFACE* target to it's subdirectory subtargets
    that link only as *STATIC* library.
    For instance, *arch* directory presents *Architecture* target
    then *Architecture* target has *CPUID*, *IO*, *PORT*
    and etc. dependencies

Exact order of linking targets is: boot.o CRTIBUNDLE &lt;TARGETS&gt; CRTNBUNDLE.
Sequence destruction cause to UB. Please to pay attention to this.

TODO
- Debug information
- Build type
- Toolchain file
- Image creation
- Build by WinGW compiler on Windows platform (optional)

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Linker script rework</title>
<updated>2025-12-20T07:16:47Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2025-12-17T07:13:08Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=eb6a12e18d45879ec383921f0c7378120b71d159'/>
<id>urn:sha1:eb6a12e18d45879ec383921f0c7378120b71d159</id>
<content type='text'>
`memory.ld` is a architecture-dependent ld config provides some general
    symbols which every `memory.ld` config must assign
    and memory regions associated with each output section.

'linker.ld' config file presents segments configuration.

Multiboot section filling move in the 'linker.ld' file.

Recommendation for further patches: controlled logic implementation for multiboot
    version and header/entries in build configuration tool (CMake or
    make). For instance, multiboot version and video mode selection
    through variable passing in build system:
    `cmake ... -DMULTIBOOT_VERSION=2 -DMULTIBOOT_VIDEO_MODE=TEXT_VIDEO_MODE`
    or
    'export MULTIBOOT_VERSION=2; export MULTIBOOT_VIDEO_MODE=TEXT_VIDEO_MODE'.
    Then build system do proper filling of `.multiboot` section depends
    on passing variables.

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Defines refactoring in msr module</title>
<updated>2025-12-11T09:04:35Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2025-12-11T09:04:35Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=e3e68862bbc731802efc39cbfb1b6df7ab255204'/>
<id>urn:sha1:e3e68862bbc731802efc39cbfb1b6df7ab255204</id>
<content type='text'>
New cpuid model uses instead of old in some
    msr definitions.

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
<entry>
<title>Put in cpuid some definitions and declarations</title>
<updated>2025-12-11T08:44:00Z</updated>
<author>
<name>Alexey Gavrilov</name>
<email>alexey.gavrilov@mail.com</email>
</author>
<published>2025-12-11T08:44:00Z</published>
<link rel='alternate' type='text/html' href='https://git.objectiveos.org/objective/objective.git/commit/?id=b98035306ceca38432c754847e3ef7474b1b778c'/>
<id>urn:sha1:b98035306ceca38432c754847e3ef7474b1b778c</id>
<content type='text'>
Declarations: `acquireInformation` for two extended cpuid
    commands. Overloading `operator&amp;` for enum classes in
    `VersionInfo` structure to get proper bit value.

All declarations from ==Cpuid.h== file are define in the
    corresponding cpp file.

Signed-off-by: Alexey Gavrilov &lt;alexey.gavrilov@mail.com&gt;
</content>
</entry>
</feed>
