ymarks

Check-in [0ed953825e]
Login

Check-in [0ed953825e]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Upgraded ymarks to Conan 2. Also, updated dependencies.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | trunk
Files: files | file ages | folders
SHA3-256: 0ed953825e0edd2b690f05fcf8deb37c554980dbeed6a41ea27a5c1d4fc7fe2f
User & Date: Cthulhux 2025-01-07 15:10:57
Context
2025-01-07
15:10
Upgraded ymarks to Conan 2. Also, updated dependencies. Leaf check-in: 0ed953825e user: Cthulhux tags: trunk
2024-01-15
23:29
updated dependencies check-in: 327a9c8387 user: Cthulhux tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to README.md.

1
2
3
4
5
6
7
8
# The ymarks bookmarks synchronization tool

See [ymarks.org](https://ymarks.org) for details about what, how and why.

More information can be found in the subfolders and their READMEs:

`client/`: The ymarks browser extension for Chrome and Firefox.
`server/`: The ymarks server.






|
|
1
2
3
4
5
6
7
8
# The ymarks bookmarks synchronization tool

See [ymarks.org](https://ymarks.org) for details about what, how and why.

More information can be found in the subfolders and their READMEs:

* `client/`: The ymarks browser extension for Chrome and Firefox.
* `server/`: The ymarks server.

Changes to server/CMakeLists.txt.

1
2
3
4
5
6

7
8
9
10
11
12
13
14
15

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30


31
32
cmake_minimum_required(VERSION 3.9)
project(ymarks)

set(CMAKE_BUILD_TYPE Release)

# Downloading the Conan wrapper if required:

if(NOT EXISTS "${CMAKE_BINARY_DIR}/conan.cmake")
  message(STATUS "Downloading conan.cmake from https://github.com/conan-io/cmake-conan")
  file(DOWNLOAD "https://raw.githubusercontent.com/conan-io/cmake-conan/v0.16.1/conan.cmake"
                "${CMAKE_BINARY_DIR}/conan.cmake"
                EXPECTED_HASH SHA256=396e16d0f5eabdc6a14afddbcfff62a54a7ee75c6da23f32f7a31bc85db23484
                TLS_VERIFY ON)
endif()

include(${CMAKE_BINARY_DIR}/conan.cmake)


# Fetching dependencies:
conan_cmake_autodetect(settings)
conan_cmake_install(PATH_OR_REFERENCE ${CMAKE_SOURCE_DIR}
                    BUILD missing
                    SETTINGS ${settings})

# Building and linking:
include(${CMAKE_BINARY_DIR}/conan_paths.cmake)
add_executable(ymarks src/main.c src/backup.c)

find_package(cJSON)
find_package(SQLite3)

include_directories(${cJSON_INCLUDE_DIRS} ${SQLite_INCLUDE_DIRS}) 



target_link_libraries(ymarks ${cJSON_LIBRARIES} ${SQLite_LIBRARIES})
|
<

<
|
|
>
|
<
|
|
|
|
|
<
|
>

<
|
<
<
<

<
|
<

|
|

<
>
>


1

2

3
4
5
6

7
8
9
10
11

12
13
14

15



16

17

18
19
20
21

22
23
24
25
cmake_minimum_required(VERSION 3.24)



# Conan:
option(USE_CONAN "Use Conan to automatically manage dependencies" ON)
if(USE_CONAN)
    if(NOT EXISTS "${CMAKE_BINARY_DIR}/conan_provider.cmake")

        file(DOWNLOAD "https://raw.githubusercontent.com/conan-io/cmake-conan/c22bbf0af0b73d5f0def24a9cdf4ce503ae79e5d/conan_provider.cmake"
                    "${CMAKE_BINARY_DIR}/conan_provider.cmake"
                    EXPECTED_HASH SHA256=796E17C1240D7B2167388B9F68411208084A641ED25DF172D64D80EF92F8DA7A
                    TLS_VERIFY ON)
        endif()

    list(APPEND CMAKE_PROJECT_TOP_LEVEL_INCLUDES ${CMAKE_BINARY_DIR}/conan_provider.cmake)
endif()


project(ymarks)





set(CMAKE_BUILD_TYPE Release)


find_package(cJSON REQUIRED)
find_package(SQLite3 REQUIRED)


# Building and linking:
add_executable(ymarks src/main.c src/backup.c)

target_link_libraries(ymarks ${cJSON_LIBRARIES} ${SQLite_LIBRARIES})

Changes to server/README.md.

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
* Open Source: Trust nobody (including me)!
* Backups: `ymarks` will clone your latest two databases in case you fucked it up.

## Requirements

### Server

You'll need a decent C compiler, CMake and Conan in your `$PATH` - the latter will take care of your dependencies. Then:

    % mkdir build ; cd build
    % cmake ..

#### Preprocessor definitions

* Define `SILENT` if you want the server to shut the fuck up while running, otherwise `ymarks` will log incoming requests to `stdout`.







|







9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
* Open Source: Trust nobody (including me)!
* Backups: `ymarks` will clone your latest two databases in case you fucked it up.

## Requirements

### Server

You'll need a decent C compiler, CMake and Conan 2.x in your `$PATH` - the latter will take care of your dependencies. Then:

    % mkdir build ; cd build
    % cmake ..

#### Preprocessor definitions

* Define `SILENT` if you want the server to shut the fuck up while running, otherwise `ymarks` will log incoming requests to `stdout`.

Changes to server/conanfile.txt.

1

2
3
4
5

6
7
8
9
10
11
12
13
[requires]

sqlite3/3.44.2

[build_requires]
cjson/1.7.17


[generators]
cmake_find_package
cmake_paths

[options]
sqlite3:shared=True
cjson:shared=True

>
|

<
|
>


|
|


|
|
1
2
3
4

5
6
7
8
9
10
11
12
13
14
[requires]
cjson/1.7.18
sqlite3/3.47.1


[layout]
cmake_layout

[generators]
CMakeDeps
CMakeToolchain

[options]
sqlite3/*:shared=True
cjson/*:shared=True